首页 > 其他 > 详细

结构体访问成员变量什么时候该用“->”或者是"."呢?的困惑

时间:2017-07-30 15:31:07      阅读:637      评论:0      收藏:0      [点我收藏+]

煎蛋栗子:

typedef struct Node{
int data;
struct Node *next;
}LinkList;

LinkList *p=(LinkList *)malloc(sizeof(LinkList));

在这里,变量p是【LinkList *】类型的【指针变量
它的值是指向某一个【结点】的【地址

而【(*p)】表示的则是【结点变量】,它的值指向的是一个【结点
p是指针,(*p)是结点变量。
我们要访问结构体内的成员data

通过指针变量访问:【p】->data
通过结点变量访问:【(*p)】.data

如果你不厌其烦地写【p.data】

系统也会不厌其烦地给你提示error: request for member ‘next‘ in ‘p‘, which is of pointer type ‘LinkList* {aka node*}‘ (maybe you meant to use ‘->‘ ?)

结构体访问成员变量什么时候该用“->”或者是"."呢?的困惑

原文:http://www.cnblogs.com/AKsnoopy/p/7259084.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!