-> 是结构体指针运算符
时间: 2024-10-27 08:07:24 浏览: 22
408结构体对齐-typedef-结构体指针-c++引用
在C语言中,结构体指针运算符(->)是一种用于访问指向结构体的指针所指向的结构体成员的运算符。它由一个减号(-)和一个大于号(>)组合而成,形如 `ptr->member`,其中 `ptr` 是指向结构体的指针,`member` 是结构体中的一个成员。
使用结构体指针运算符可以方便地访问和修改结构体成员的值,而不需要先解引用指针得到结构体本身。例如:
```c
#include <stdio.h>
typedef struct {
int id;
char name[20];
} Person;
int main() {
Person p = {1, "John Doe"};
Person *pPtr = &p;
// 使用结构体指针运算符访问成员
printf("ID: %d
", pPtr->id);
printf("Name: %s
", pPtr->name);
// 修改成员值
pPtr->id = 2;
strcpy(pPtr->name, "Jane Doe");
printf("Updated ID: %d
", pPtr->id);
printf("Updated Name: %s
", pPtr->name);
return 0;
}
```
在这个例子中,我们定义了一个 `Person` 结构体类型,并创建了一个该类型的变量 `p`。然后我们创建了一个指向 `p` 的指针 `pPtr`,并通过结构体指针运算符 `->` 访问和修改了 `p` 的成员 `id` 和 `name`。
阅读全文