读书人

结构体小疑点 求大神

发布时间: 2012-04-19 14:36:43 作者: rapoo

结构体小问题 求大神!

typedef struct Node {
int data;
struct Node *next;这一行如何解释?这个 next指针 指哪了呢?
}Linklist;

[解决办法]
struct Node *next是一个Node结构类型的指针,这里只是声明,没有初始化,因此随机指向任意一个位置
[解决办法]
我觉得这个指针还没有初始化,应该指向一个随机的地址,但是初始化以后,让他指向另个Node类型的结构体,就能形成链表。
[解决办法]
如果要用此结构体构成单链表,当然是要指向下一个节点了!
[解决办法]
看三楼。楼主的这些语句是一个类型声明,此时不存在实际指向的概念。当使用这个类型声明一个实例时,如[Linklist list],这时,list的next域,指向一个未知的空间;初始化是可以用语句[list.next=NULL]确定指向。

探讨
引用:

struct Node *next;这一行如何解释?这个 next指针 指哪了呢?
说明这个结构体内包含一个指向该结构体类型的指针。。


可以看看 链表,里面都是这么用的

各位应该没明白我的意思 首先struct Node *next;这行中next是一个结构指针变量 结构指针变量指向的应该是结构体的首地址 那么next是指向本结构体吗? 这样我感觉要……

[解决办法]
当向链表中插入新的元素[Linklist listX]时,初始化[listX.next=NULL],然后[list.next=listX],这样指向的关系就清楚了。
探讨
看三楼。楼主的这些语句是一个类型声明,此时不存在实际指向的概念。当使用这个类型声明一个实例时,如[Linklist list],这时,list的next域,指向一个未知的空间;初始化是可以用语句[list.next=NULL]确定指向。

引用:
引用:

struct Node *next;这一行如何解释?这个 next指针 指哪了呢?
说明这个结构体……

[解决办法]
探讨
各位应该没明白我的意思 首先struct Node *next;这行中next是一个结构指针变量 结构指针变量指向的应该是结构体的首地址 那么next是指向本结构体吗? 这样我感觉要……

读书人网 >C语言

热点推荐