当前位置: 技术问答>linux和unix
有一个程序,运行一段时间就会floating point exception,而且没什么规律,怎么查也查不到问题出在哪里,怎么办?
来源: 互联网 发布时间:2015-08-05
本文导语: 如题: 有什么办法可以确定导致floating point exception的语句的位置? | 用gdb跟,是不是每次都是同一地方出错。 | 用gdb调入程序,然后在gdb里面运行,就可以看到是哪句语句...
如题:
有什么办法可以确定导致floating point exception的语句的位置?
有什么办法可以确定导致floating point exception的语句的位置?
|
用gdb跟,是不是每次都是同一地方出错。
|
用gdb调入程序,然后在gdb里面运行,就可以看到是哪句语句出的错。
|
具体有没有方法可以确定这种错误我也不是很清楚,建议你把代码贴出来我再给你看看
|
极有可能是除零出错!查一下除法运算的地方
|
查找浮点数运算的部分
|
笨办法,在函数里可能出错的地方打印消息,辛苦点就可以知道哪出错了。
|
楼上的方法是比较有效的,实际项目中遇到棘手的问题也经常把log写到文件中来分析。
|
console程序也没有关系呀,在gdb中跑起来就可以了,出错了再 bt 检查喽
编译是至少 -g 参数,跑起来占内存多一点点 :)
编译是至少 -g 参数,跑起来占内存多一点点 :)