单向链表结点定义结构体指针的指针有什么意义?该如何解决
单向链表结点定义结构体指针的指针有什么意义?
typedef struct node{
......
}NODE;
typedef NODE *link_list
int other(link_list *list)
{
*list=(link_list)malloc(sizof(NODE))
...........
}
定义link_list *list有什么意思吗?
------解决方案--------------------
*list=(link_list)malloc(sizof(NODE))
这里已经很清楚了,修改了list的内容。
比如A节点的next要指向下一个B节点,如果next只用指针,那么,在other函数中,只能修改B的内容,而无法改变A->next指向B的现实。
而用了指针的指针,就可以修改next,比如让A->next指向C或者指向空什么的。
typedef struct node{
......
}NODE;
typedef NODE *link_list
int other(link_list *list)
{
*list=(link_list)malloc(sizof(NODE))
...........
}
定义link_list *list有什么意思吗?
------解决方案--------------------
*list=(link_list)malloc(sizof(NODE))
这里已经很清楚了,修改了list的内容。
比如A节点的next要指向下一个B节点,如果next只用指针,那么,在other函数中,只能修改B的内容,而无法改变A->next指向B的现实。
而用了指针的指针,就可以修改next,比如让A->next指向C或者指向空什么的。