Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/146.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 两台计算机,相同的输入,不同的结果?_C++_Debugging - Fatal编程技术网

C++ 两台计算机,相同的输入,不同的结果?

C++ 两台计算机,相同的输入,不同的结果?,c++,debugging,C++,Debugging,我有两台电脑,我在上面编程,我的家庭电脑和我的大学电脑。两台计算机在64位Windows 7的家庭溢价上运行Visual C++ 2008。p> 为什么即使在调试和发布模式下进行了干净的重建之后,尽管代码和输入相同,两台计算机仍会给出不同的结果?这两台计算机之间唯一的真正区别是一台具有更好的规格(core 2 quad vs core i7),但除此之外,没有真正的区别。看起来您在线程同步方面有问题。如果你能提供更多的细节,那将很有帮助。代码的作用是什么?也许只是展示一下 如果在机器A上重复执行

我有两台电脑,我在上面编程,我的家庭电脑和我的大学电脑。两台计算机在64位Windows 7的家庭溢价上运行Visual C++ 2008。p>
为什么即使在调试和发布模式下进行了干净的重建之后,尽管代码和输入相同,两台计算机仍会给出不同的结果?这两台计算机之间唯一的真正区别是一台具有更好的规格(core 2 quad vs core i7),但除此之外,没有真正的区别。

看起来您在线程同步方面有问题。如果你能提供更多的细节,那将很有帮助。代码的作用是什么?也许只是展示一下


如果在机器A上重复执行,它是否总是产生相同的输出?如果在同一台机器上生成多个进程,会发生什么情况?

您有一个bug。很可能是竞争条件或过时的指针引用。如果您向我们展示一些相关的代码,其中您得到的结果不一致,我们可能会帮助您。为了强调上述评论,没有代码我们无法做任何事情。你的程序可能涉及的操作取决于浮点、文件系统、环境、机器架构、cpu温度、系统时钟、可用存储等等。。。只有您的代码才能显示它是哪一个。另一个可能的原因是:使用未初始化的内存。在这种情况下,使用调试器运行时,差异可能消失。要排除过热问题或BIOS设置错误(如RAM计时)的问题,您可以尝试在两台计算机上运行名为Prime95的程序。这是一个密集的数字运算程序,它隐藏CPU和RAM以检测过热/超频引起的错误。我认为你的程序更有可能有bug,所以这个建议更像是万不得已的建议。如果两次运行完全相同,我会在几个小时后回复你……即使输入数据很小,程序运行也需要一个多小时。