因此根据单链表的性质,其可以定义为一个结构体:
// 使用typedef声明一个结构体的时候
typedef struct node{
DataType data; // 数据域
struct node* next; // 指针域,逻辑地址对应的物理地址
}Node, *Link;
// Node st 等价于 struct node st;
// Link p 等价于 struct node *p;
// p = &st;
// 下面两条语句等价
p = (Link) malloc(sizeof(Node));
p = (struct node *)malloc(sizeof(Node))
Node是一个结构体变量,Link是一个指向结构体的指针
typedef
,那么每次定义新变量都要前面加上struct
,因此使用typedef
能够使程序清晰typedef
也可以直接使用结构体名