C语言结构体指针用法
时间: 2024-11-13 21:15:47 浏览: 27
c代码-结构体组指针 (*p).number p->number (等价)
在C语言中,结构体指针是一种强大的工具,它允许我们间接访问和操作结构体变量。结构体指针实际上是一个存储结构体地址的变量,通过这个指针我们可以对结构体的内容进行读取、修改或动态地分配内存。
以下是一些基本的结构体指针用法:
1. 定义结构体和结构体指针:
```c
typedef struct {
int num;
char name[20];
} MyStruct;
MyStruct* ptr; // 定义一个结构体指针
```
2. 动态分配结构体:
```c
ptr = (MyStruct*)malloc(sizeof(MyStruct)); // 分配空间并初始化为NULL
```
3. 初始化结构体指针:
```c
ptr = &myStruct; // 如果有一个已存在的结构体变量myStruct
```
4. 访问结构体成员:
```c
ptr->num = 10; // 通过指针访问num字段
printf("%s", ptr->name); // 或者ptr.name
```
5. 空指针处理:
```c
if (ptr == NULL) {
printf("结构体指针为空");
}
```
阅读全文