【2019/8/22更新】关于 C / C++ 中部分语句跳过不执行的常见原因汇总

本文深入探讨了编程中常见的异常情况,如中间变量溢出、数组下标越界、自定义函数跳过执行、IDE编译错误及指针迭代器问题。针对这些问题,文章提供了有效的排查与解决策略,强调在算法竞赛中慎用指针以减少错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、中间变量溢出,影响到后续语句的执行。

2、数组下标越界,写入了数组之后的内存地址,导致部分奇异的破坏。

3、自定义函数跳过不执行,可能与函数名和内置的函数名重合且参数类型相同导致编译器无法判断重载哪个函数有关。

4、IDE 出错或编译出错但未予提示,重启 IDE 或重新编译,也可以将不执行的语句及其相关联的语句修改为等效的语句后重新编译,或修改为其它语句重新编译第一次,再修改回原语句重新编译第二次。

5、指针或迭代器出错,可能是产生了野指针或者编程时写错。
如果你是在做算法竞赛的题目,应当尽量少用指针或迭代器,特别是指针,因为一旦写错,查错往往要耗费巨量的时间。

对于以上情况,大多数时候由于语句合法(无语法错误),IDE 都不会给出错误提示。所以对于这些问题引起的部分语句直接跳过,只能通过打印中间变量和单步执行来判定问题所在。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值