在VMware虚拟机,Ubuntu系统,编译器是clang++。自己写的c++代码,昨晚跑出来的结果是错误的,今天在没有做出任何修改的情况下再跑一遍,既然正确了。 这是怎么回事呢? 难到计算机跟人一样也会因为“累”而犯错误吗?
在VMware虚拟机,Ubuntu系统,编译器是clang++。自己写的c++代码,昨晚跑出来的结果是错误的,今天在没有做出任何修改的情况下再跑一遍,既然正确了。 这是怎么回事呢? 难到计算机跟人一样也会因为“累”而犯错误吗?
|
LU35Jul 3, 2015
1
和浮点计算相关?
|
|
2
@LU35 跟线程有关的。
|
|
visonmeJul 3, 2015
3
在虚拟机和真机中跑出来的数据本身可能存在偏差的,我以前做图像处理时候感觉最明显了,不过具体还是要看你是做的什么运算
|
|
acrosJul 3, 2015
4
内存泄漏、多线程错误····
|
|
5
@visonme 基本上没做什么运算,搞不懂的是同一个程序,同一个环境为什么会出现这种错误,难到跟系统的稳定相关??
|
|
SeptembersJul 3, 2015
6
@loversInJapan 没有重新编译?
|
|
7
@acros 用的是智能指针,多线程错误的话,今天早上就不能跑出来了吧。。
|
|
8
@Septembers 今天再跑的时候没有,昨晚重新编译了好多次
|
|
ilotuoJul 3, 2015 via Android
9
最有可能程序哪个地方指针乱了
|
|
zcbenzJul 3, 2015
10
某个变量没初始化,或者race condition。
|
|
aiskJul 3, 2015
11
这种情况很大原因是某个变量没初始化,然后之前那个地方刚好有其他数据,导致运行出错,今天刚好没数据,运行结果没问题。
|