我正在尝试用C语言填充我的链表,但是id并没有按照我想要的方式来写。我想保留一个指针"p“,并使用相同的指针继续添加到列表中。然而,当我尝试打印时,它只打印头部的数据!
#include<stdio.h>
#include <stdlib.h>
typedef struct{
int data;
struct node *next;
}node;
int main(){
node *head = NULL;
head = malloc(sizeof(node));
if(head==NULL){
printf("ta foirer quelque chose frero!");
return 1;
}
(*head).data=3;
(*head).next=NULL;
node *p = NULL;
p = (node*) head->next;
p = malloc(sizeof(node));
p->data = 5;
p->next = NULL;
p= (node *)p->next;
int i=0;
while(i<5){
p = malloc(sizeof(node));
i++;
p->data = i;
p->next=NULL;
p= (node *)p->next;
}
p = head;
while(p){
printf("\n%d",p->data);
p =(node*) p->next;
}
return 0;
}
我得到的是输出
3
我希望能得到
3
5
0
1
2
3
4
https://stackoverflow.com/questions/55642943
复制相似问题