关于C语言中结构体的 . 访问和 -> 访问的关系
1、谭浩强C语言P304写道:
- 为了使用方便和直观,C语言允许吧(*p).num用p->num代替。‘->’代表一个箭头,p->num表示p所指向的结构体变量中的num成员。同样,(*p).name等于p->name。
- ‘->’称为指向运算符。优先级:1;结合方向:自左向右
*p = stu;
如果P指向一个结构体变量stu,那么以下三种用法等价:
stu.name = (*p).name = p->name;
2、总结
相同之处:
. 和 -> 都是用来访问结构体内的变量用的
不同之处:
.是取的这个结构体中的元素
->是取的这个结构体中中元素的地址所对应的元素