在C语言中,->和.都是用于访问结构体(struct)成员的运算符,但它们的使用场景略有不同。
1.->运算符用于访问结构体指针的成员。当你有一个指向结构体的指针时,你可以使用->运算符来访问该结构体的成员。例如:
cpp
struct Person {
char name[50];
int age;
};
struct Person* p = malloc(sizeof(struct Person));
p->name = "John";
p->age = 30;
在上面的例子中,p是一个指向Person结构体的指针,你可以使用->运算符来访问name和age成员。
2..运算符用于访问结构体的成员。当你有一个结构体变量时,你可以使用.运算符来访问该结构体的成员。例如:
cpp
struct Person {
char name[50];
int age;
};
struct Person* p = malloc(sizeof(struct Person));
p->name = "John";
p->age = 30;
在上面的例子中,person是一个Person结构体变量,你可以使用.运算符来访问name和age成员。
3.总结一下,->运算符用于访问结构体指针的成员,而.运算符用于访问结构体变量的成员。