void Output(stu *head) //显示函数
{
//出错部分!无法进入到判断直接报运行错误(无编译错误)
while(p!=NULL)
{
printf("学号: %s",p->num);
printf("\n姓名: %s",p->name);
printf("\n性别: %s",p->sex);
printf("\n年龄: %d",p->age);
p=p->next;
}
printf("\n");
getchar();
}
c中当输出的是空链表则打印错误警告但是报运行错误!
答案:2 悬赏:80 手机版
解决时间 2021-06-09 16:22
- 提问者网友:伴风望海
- 2021-06-08 20:41
最佳答案
- 五星知识达人网友:底特律间谍
- 2021-06-08 21:50
其实本不该这么做!
你的head是表头吧!
表头本应该指向第一个节点,也就是说表头里面的变量元素除了指向下一个节点的指针外
剩下的变量均不能复制!
我估计你是这句话报错了!
stu *p;
p=head;
因为需要在内存分配空间给p指针哈!
在这两句中间加上一句p=(stu *)malloc(sizeof(stu));看看~?
应该就没错了!
还有你的编程规范哈!不太好看额!
全部回答
- 1楼网友:雪起风沙痕
- 2021-06-08 22:47
如果你的链表非空这段就不执行了,
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯