typedef struct shuanglianbiao
{
struct shuanglianbiao* qian;
int a;
struct shuanglianbiao* next;
}ss;
ss* end, * head;
ss* creat(int n)
{
ss * node;
head = (ss*)malloc(sizeof(ss));
end = head;
end->qian = NULL;
for (; n > 0; n--)
{
node = (ss*)malloc(sizeof(ss));
scanf("%d", &node->a);
end->next = node;
node->qian = end;
end = end->next ;
}
end->next = NULL;
return head;
}
以上是我看网上的的创建双链表,应该是对的;我的问题主要是从for那里开始;
以下是我的码,求好心人帮我看看;
typedef struct shuanglianbiao
{
struct shuanglianbiao* qian;
int a;
struct shuanglianbiao* next;
}ss;
ss* end, * head;
ss* creat(int n)
{
ss * node;
head = (ss*)malloc(sizeof(ss));
end = head;
end->qian = NULL;
for (; n > 0; n--)
{
node = (ss*)malloc(sizeof(ss));
scanf("%d", &node->a);
end->next = node;
node->qian = end->qian;
end = node ;
}
end->next = NULL;
return head;
}
在这部分源码下,当我使用 end->qian->n时,visual提醒我end->qian是个空指针,,求大神帮我从for开始看看我的创建错在哪