c语言中指针中 -> 和 。的区别

比如有如下结构

 

typedef strut node{

   int data;

  strut node * next;

 

} ListNode;

 

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

 

上面语句中涉及到 指针变量和结点变量两个概念

变量p 是ListNode *  类型的指针变量 p的值指向某一个结点的地址

p所指向的(ListNode *) malloc(sizeof(ListNode));就是结点变量

p是指针  如果是 *p就表示 结点变量

结点变量实际就是变量本身要访问成员 比如data 可以直接(*p).data

如果用指针访问结构内成语 必须用p->data

posted @ 2011-10-25 09:52  饺子吃遍天  阅读(614)  评论(0)    收藏  举报