You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++链表实现员工数据库无法新增多节点且display不执行问题排查

代码错误原因
  • 核心错误出在Link_List类的构造函数中,你错误使用了相等比较运算符==代替赋值运算符=:
Link_List()
{
    head==NULL; // 这里是比较操作,没有给head赋值,属于逻辑错误
}
  • 该错误会导致head指针没有被初始化为NULL,成为野指针,指向随机内存地址:
    1. 执行create函数插入第一个节点时,if(head==NULL)的判断结果大概率为假,直接走else分支
    2. 后续执行p=head后访问p->next,属于非法内存访问,程序直接触发崩溃,因此不会执行后续的"是否继续添加"提示输入逻辑,也不会运行display函数就提前终止。
修复方案

只需要将Link_List构造函数中的比较运算符改为赋值运算符即可:

Link_List()
{
    head=NULL; // C++11及以上版本推荐写head=nullptr;更规范
}

修复后程序即可正常运行:输入完员工编号后会提示是否继续添加,结束添加后会自动调用display函数输出所有已录入的员工编号。

内容的提问来源于stack exchange,提问作者user15915509

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 10:48:01