编程高手帮我看下这窜代码有什么错误?我在运行时显示第三行是错误的
答案:4 悬赏:30
解决时间 2021-04-28 02:36
- 提问者网友:放荡不羁
- 2021-04-27 08:07
#include "stdio.h"
void insert(Linklist*head,intx,intk)
{Linklist*p,*s;
s=(Linklist*)malloc(sizeof(Linklist));
s->data=x;
p=head->next;
if(p==NULL)
{head->next=s;
s->next=NULL;
}
else {while(p&&p->data!=k)
p=p->next;
if(p->data==k)
{s->next=p->next;
p->next=s;
}
else
{p->next=s;
s->next=NULL;
}
}
}
最佳答案
- 二级知识专家网友:社会水太深
- 2021-04-27 09:16
主函数呢?
全部回答
- 1楼网友:专属的偏见
- 2021-04-27 11:06
你的Linklist 是怎么定义的 我猜 这本来就是个指针了 你把 Linklist *p,*s; 这句 改成Linklist p,s;
s=(Linklist*)malloc(sizeof(Linklist)); 这句改成:s=(Linklist)malloc(sizeof(Node))
这个Node 是在定义Linklist时 struct这个词后面的那个词 楼主没有把Linklist怎么定义的发出来
我也不知道是什么 只能用Node来代替了。。
- 2楼网友:情战凌云蔡小葵
- 2021-04-27 09:51
#include "stdio.h"
#include "malloc.h"
void insert(Linklist*head,intx,intk) {Linklist *p,*s; s=(Linklist*)malloc(sizeof(Linklist)); s->data=x; p=head->next; if(p==NULL) {head->next=s; s->next=NULL; } else {while(p&&p->data!=k) p=p->next; if(p->data==k) {s->next=p->next; p->next=s; } else {p->next=s; s->next=NULL; } } }
- 3楼网友:专属的偏见
- 2021-04-27 09:41
第三行的错误是因为你没有包含头文件,编译器找不到这个文件的实现代码。你把这个文件包含进去:
#include <malloc.h>
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息