c语言中结构体后面带*
时间: 2023-10-21 13:04:05 浏览: 141
c语言中的结构体
结构体后面带 * 表示该结构体成员是一个指针。在 C 语言中,结构体可以包含不同类型的成员,包括指针类型。通过在结构体中定义指针类型的成员,我们可以在程序中动态地分配内存来存储数据,并通过指针进行访问和操作。
例如,下面是一个包含指针类型成员的结构体的示例:
```c
#include <stdio.h>
// 定义一个包含指针类型成员的结构体
struct Person {
char *name;
int age;
};
int main() {
// 创建一个结构体变量并分配内存
struct Person *person = (struct Person *)malloc(sizeof(struct Person));
// 为结构体成员赋值
person->name = "John";
person->age = 30;
// 访问结构体成员并打印输出
printf("Person Name: %s\n", person->name);
printf("Person Age: %d\n", person->age);
// 释放内存
free(person);
return 0;
}
```
在上面的示例中,结构体 Person 的 name 成员是一个指向字符型的指针。通过动态分配内存,并将其赋值给 name 成员,我们可以保存和访问字符串数据。记得在使用完毕后,要及时释放动态分配的内存以避免内存泄漏。
阅读全文