2 debuglw DebugLw 于 2014.12.21 03:50 提问

为什么报错,请说出原理。详细说出调试步骤,谢谢!

int _tmain(int argc, _TCHAR* argv[])
{
int i = 100;
i = i / 0;

return 0;

}

2个回答

ly601579033
ly601579033   2014.12.26 17:27
已采纳

这个调试的话只能显示:
Program terminated with signal SIGFPE, Arithmetic exception.
The program no longer exists.
13 i = i/0;
————————就是terminated操作出错,报了一个出错信号,然后程序中止了...

出错的原因是————i/0是通过加法实现的,计算机的加减乘除的本质都是由加法实现的,涉及到原码、反码、补码的操作,0是非常特殊的...具体的
要解释的基础太多了,有兴趣自己可以学习一下,网上多的是啊~~~

caozhy
caozhy   Ds   Rxr 2014.12.21 10:27

i / 0,除数不能为0

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!