注册 登录
编程论坛 数据结构与算法

定义的 node 和*node 在用法上有什么区别?

ccfuser 发布于 2014-10-04 22:02, 610 次点击
typedef struct Node
{
    int elem;
    struct node * next;
}*LinkList;

LinkList node;
LinkList *node;

定义的node和*node在用法上有什么区别?
4 回复
#2
巧若拙2014-10-04 22:13
LinkList node;//一个LinkList类型的指针
LinkList *node;//指向一个LinkList类型指针的指针
#3
ccfuser2014-10-04 22:17
回复 2 楼 巧若拙
这两个指针变量在做函数的参数时,有什么区别?
#4
dcl20142014-10-05 17:03
LinkList node;//一个LinkList类型的指针,这个做函数的参数也可以写做,但是不好 因为这样子传的就是整个结构体的空间 耗费时间 耗费内存,而且也不能通过值传递修改参数的值 ,通常不这样使用
LinkList *node;//指向一个LinkList类型指针的指针,这是推荐的方法(在传参时),这是地址传递 效率高 内存就只是占用4个字节的内存 省空间啊 ,而且可以更改指针所指向的 结构体变量里面的 数据的值 这是推荐的方法 应该多采用
  以上答案请笑纳
         谢谢哈
#5
皖西桃花人2014-10-06 09:28
LinkList *node;//指向一个LinkList类型指针的指针,这是对地址传递。LinkList node;//一个LinkList类型的指针,容易造成结构体空间的内存增大,别用了。
1