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

为什么我的C++代码输出-1073741676而非变量的正常计算值?

问题原因分析

你的代码触发了整数除以零的未定义行为,是运行异常的核心原因,逐步计算可复现问题:

  • 初始变量值:vans=6、trains=5、flights=9、scooters=9、cycles=5
  • 执行vans -= flights后,vans值为-3,无异常
  • 执行trains /= cycles + cycles时,cycles+cycles=10,按照C++整数除法规则,5/10的结果是0,此时trains的值变为0
  • 执行flights /= scooters *= trains时,优先计算右侧scooters *= trains,等价于scooters = 9 * 0 = 0,随后执行flights /= 0,触发第一次除以零操作
  • 后续执行cycles /= trains时,trains已经是0,触发第二次除以零操作

C++标准没有定义除以零的操作行为,不同编译器、运行环境会出现不同的异常表现:比如程序直接崩溃、输出随机垃圾值、返回异常错误码,你遇到的-1073741676就是Windows环境下算术异常的典型错误返回值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 18:36:01