*next是链表节点指向下一个节点的指针,用来存放下一个节点的地址域。这是链表的一种固定结构。
例如:
typedef struct node
{
int data;
struct node *next;
}stacknode,*linkstack;
typedef将stacknode定义成了结构体类型,将linkstack定义成了指向结构体stacknode的指针类型,它们现在都是一种类型了(同基本类型int等一样),当然可以用它们来定义变量。
至于为什么定义指针域要用struct node *next;而不能用stacknode *next;或linkstack next;因为定义指针域在上面,而定义类型是在下面。在定义指针域的时候,stacknode和linkstack还都不是一种类型。
注意事项
这是c语言中的结构体的问题,struct student是结构体类型名,是定义了一个名为student的结构体的意思,struct是结构体中的关键字。a代表的是结构体变量名,在结构体里面不是可以定义结构体成员。
如:int sum;这样你可以在下面直接表示成a.sum 表示sum是结构体变量a中的一个成员名,同时也可以赋值给sum struct student *next表示的是结构体中的指向student中的一个指针变量。
next 英文词的意思 是 “下一个”。
链表里用于指向下一个节点的指针,也就是指向下一个(节点)结构类型的指针。
struct node {} 是一种结构,有两个成员,一个成员是 int 数据,另一个是指向下一个 node 结构的指针。
next 是变量名字,你当然也可以改用别的名字例如:
struct node {int d; struct node *xyg;};
用汉语拼音 xyg 替代 next。
扩展资料:
相关注意事项如下:
这是c语言中的结构体的问题,struct student是结构体类型名,是定义了一个名为student的结构体的意思,struct是结构体中的关键字。a代表的是结构体变量名,在结构体里面不是可以定义结构体成员。
如:int sum;这样你可以在下面直接表示成a.sum 表示sum是结构体变量a中的一个成员名,同时也可以赋值给sum struct student *next表示的是结构体中的指向student中的一个指针变量。
本回答被网友采纳