详细讲述一下c语言中.与->
时间: 2023-05-31 19:03:13 浏览: 117
在C语言中,`.`和`->`都是用来访问结构体或联合体成员的运算符。
`.`运算符用于访问结构体或联合体变量的成员,其用法如下:
```
struct my_struct {
int x;
int y;
};
struct my_struct s;
s.x = 10; // 使用`.`访问结构体成员x
s.y = 20; // 使用`.`访问结构体成员y
```
`->`运算符用于访问指向结构体或联合体的指针变量的成员,其用法如下:
```
struct my_struct {
int x;
int y;
};
struct my_struct *p;
p = malloc(sizeof(struct my_struct)); // 分配结构体内存
p->x = 10; // 使用`->`访问结构体成员x
p->y = 20; // 使用`->`访问结构体成员y
```
注意,`.`运算符只能用于结构体或联合体变量,而`->`运算符只能用于指向结构体或联合体的指针变量。此外,`->`运算符本质上是对指针进行解引用,因此等价于`(*p).x`和`(*p).y`。
阅读全文