我宁愿不转储代码,但解释我的问题。经过几个小时的调试,我终于明白,在我的代码中,某个浮点值没有明确修改,变成了很大(超过1e15)。我在我的程序中使用了大量的内存(一个包含800多个单词的字符串数组),除此之外,我不知道可能会导致这种情况。浮动值突然变大
如果任何人有这方面的任何想法,请分享。否则,我会很快发布一个 代码的pastebin。
编辑: 这里是代码:http://pastebin.com/vgiZweNq。问题在于next_generation()
函数,其中sumfit
变量在循环中的随机时间变为坚果。
另外,我已经在linux上使用-fno-stack-limit
和-fstack-check
编译过,以避免堆栈溢出。
编辑2: 我已经改变了程序使用动态分配链表,以进一步避免堆栈溢出。尽管如此,sumfit
随机点更改为Floatzilla,通常很早。
干杯!
如果你没有明确地触及变量,我们最好的猜测是一些内存管理错误。发布代码,今天水晶球朦胧。 – zoul 2011-01-29 11:39:46