매우 이상한 문제로 실행 중이며 멀리서 진단하는 것이 어려울 수도 있음을 알고 있습니다. 그러나 어떤 힌트라도 도움이 될 것입니다.valgrind 실행 중에 예외가 throw되지만 프로그램을 직접 호출 할 때 예외가 발생하지 않습니다.
내 프로그램을 실행 Valgrind의 실행, 예외가 발생 :
여기 내 문제가있어,이 말씀을 가졌어요. 그러나 쉘에서 직접 프로그램을 호출하면 정상적으로 실행됩니다.valgrind의 vgdb를 사용하여이 예외가 발생하는 이유를 조사하려고했습니다. 그러나 이것은 예외가 발생한 후에 변수를 조사 할 수있게합니다. 왜냐하면 나는 valgrind에 (계속 사용하지 않고) 코드를 삽입 한 후 gdb를 시작하는 좋은 방법을 찾지 못했기 때문입니다.
예외가 발생하는 코드 세그먼트를 다시 만들려고했지만 동일한 변수 콘텐츠를 사용하여 예외를 트리거하지 않습니다.
나는 VMWare Workstation 8.0.1 가상 머신에서 우분투 11.10과 gcc 4.6.1, valgrind 3.7.0, gdb 7.3을 사용하고 있다고 덧붙여 야합니다.
도움을 주시면 감사하겠습니다.
나는이 동작에 대한 이유를 발견했다고 생각합니다. 'vgdb'와 쉘에서는 가장 큰 double에 대한 한계가 다르다. 'vgdb'에서 1.2E56^9를 계산하려고 시도한 후에 나는'nan'을받는 반면, 프로그램이 쉘에서 호출되면 행복하게 계속됩니다 (올바른 결과를 찾습니다). – Achim