Я бы предпочел не создавать дамп кода, а объяснить мою проблему.После нескольких часов отладки мне удалось понять, что в какой-то момент в моем коде значение с плавающей запятой, которое не изменено явно , становится ОГРОМНЫМ (более 1e15).Я использую много памяти в моей программе (строковый массив, содержащий более 800 слов), но я понятия не имею, что может вызвать это.
Если у кого-то есть идеи по этому поводу, пожалуйста, поделитесь,В противном случае я скоро выложу вставку кода.
РЕДАКТИРОВАТЬ: Вот код: http://pastebin.com/vgiZweNq. Проблема заключается в функции next_generation()
, гдеsumfit
переменная сходит с ума в случайные моменты времени в цикле.
Кроме того, я скомпилировал это на linux, используя -fno-stack-limit
и -fstack-check
, чтобы избежать переполнения стека.
РЕДАКТИРОВАТЬ 2: Я изменил программу, чтобы использовать динамически назначенный связанный список, чтобы далее избежать переполнения стека.Тем не менее, sumfit
меняется на Floatzilla в случайных точках, обычно довольно рано.
Приветствия!