问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言新手问题关于链表的问题报错

发布网友 发布时间:2023-12-22 13:10

我来回答

3个回答

热心网友 时间:2024-04-05 09:23

gets(p2->data); 要改为: scanf("%d", &p2->data);

gets 是从键盘输入字符串到字符串数组中,而你这里链表节点的 data 域是 int 型的,类型不符,自然会出现内存段错误了!

或是要在链表节点的 data 域中存储一个字符串,则在声明类型时应该是:
typedef struct node
{
char data[256]; // 字符串长度 <= 255
struct node *link;
}NODE;

p2==(NODE*) malloc(sizeof(NODE));

这句也错了,p2没有指针分配的内存空间,仍是野指针,下一句
gets("%d",p2->data);

中用 p2-> 会导致内存段错误。

热心网友 时间:2024-04-05 09:24

p2==(NODE*) malloc(sizeof(NODE));赋值用等于号=,p2指向的是新开辟的链表首地址,由于未被赋值,所以p2->data可以是任意数,gets()是得到一个数组的首地址,括号中应该是一个地址,所以表达式错误。由于存在上述三个个错误,所以报错。

热心网友 时间:2024-04-05 09:24

p2->data is of type int, and gets is for getting a string, you may want to use scanf instead.
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎样备份iPhone的照片? 奇迹的战士怎样加点? 奇迹私服战士8W点的怎么加点PK厉害 房屋装修建材的选购家装建材种类有哪些 家装建材都包含什么 家装应该买什么东西 劓刑简介 电信手机停机保号怎么办理? 定胆定胆方法 3d定胆方法有哪些? 怎么一年内修改两次怎样才能一年修改两次? 修改没到一年怎么改? 一年内怎么改第二次 改过一次怎么改第二次? 修改一年内如何二次修改吗苹果 一个号码注册了两个,怎么找回第一个? 未满一年怎么改第二次 你好!请问格力空调风管机FGR7.2Pd/C3Nh-N2(I)的保修期限是多久?_百度... 寻找合适的qq自定义头像 您的手机号在最近24小时内绑定过三个,已达到限制,...24小时后... 一年内怎么改第二次 一年内怎么改第二次 如何使女人在睡觉中说出心中的秘密,在移神换将中读过忘记了? ...图纸还是不能显示,同样的图纸在别人电脑上能显示,为什么在我的这里就... 一个手机号注册两个怎么弄 刚打好的混凝土被水泡了有影响吗 2014浙江高考诗歌 羊羔绒跟牛奶绒哪个好 光伏逆变器出现电网频率超过范围怎么办电网频率超过范围? ...社会的价值取向。作为当代大学生,应如何培育和 一年内怎么改第二次 2021招财的微信名,怎么改个有意义的ID? 老师冤枉我考试作弊,然后没收了手机偷看了里面的所有内容,还说... 发加偏旁可以怎么组词呢? 人生就是一列开往坟墓的列车,路途上会有很多站,很难有人可以自始至终... 如何客观评价李木戈执导,曾舜晞、杨超越主演的武侠剧《说英雄谁是英雄... 单反如何对焦? 我已经闯过434关谁与我战?动,猜一成语 被盗了 手机号被解绑定了 密码也改了 好友也被全部删除 该怎么找... 被误改被限制1年后才能改回来怎么弄? 保胃护胃吃什么好 地方与地方的气候为什么不一样 一年内能改第二次吗? 福彩双色球第32期开奖号码是多少 安卓游戏《黑暗之刃》怎么买装备? 怎么查询身份证注册了多少个 我脾气暴躁经常跟男朋友发火他从来不跟我吵架还哄我这样的男人你结婚吗... 我想问下,我现在要每周给仓库开个例会,之前一直在说各种制度,因为我们... 被老师冤枉偷看了卷子,背了答案,怎么办 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信...