C语言里.和->的区别

Yannnnnn / 2023-08-11 / 原文

->使用一个指向结构体或对象的 指针 访问其内成员

.直接 通过结构体或对象来访问他们的内部成员变量

 

早期的C语言不支持将结构体作为参数在函数之间传递,只能用指向结构的指针在函数间进行传递

 

 

a->b 的含义是 (*a).b ,所以他们是不同的,不过的确 -> 可以用 * . 实现,不需要单独一个运算符。 嗯,我这是说现代的标准化的 C 语义上来说, -> 可以用 * . 的组合实现