关于链表中指针的学习
昨天晚上在学习数据结构关于链表的部分,理解链表没什么难度,但是当自己动手写程序的时候各种问题就出来了,感觉逻辑很正常但是总得不到正确的结果。 首先自己对C语言指针理解的不是很深入,在定义链表节点的结构体时,定义了一个指针类型的变量指向结构体如代码所示: 1 typedef int status; 2 typedef struct Node{ 3 status data; 4 Node *next; 5 }Node,*linklist; 然后在main函数中定义一个指向结构体的指针变量如 linklist L; 在main函数之外声明一个创建链表的函数 1 void Create_list(linklist L1,int n){ 2 linklist p; 3 L1 = (linklist)malloc(sizeof(Node)); 4 L1->next = NULL; 5 for(i = 0;i < n; i++){ 6 p = (linklist)malloc(sizeof(Node)); 7 p->data = i; 8 p->next = L1->next; 9 L1->next= p; 10 } 11 } Create_list函数采用的事头插法添加链表节点,经过main