2012-06-26 46 views
9

我已經在vC++中編寫了一個程序,它在以下各種情況下具有不同的行爲。視覺工作室F5,ctrl + F5或在視覺工作室之外運行有什麼不同?

當我通過F5運行它時,它可以在發佈模式下正常工作。

當我通過ctrl + F5運行它時,它開始發送數據到程序時崩潰。

在視覺工作室之外它立即崩潰。

我不知道如何找到bug。關於 的任何想法在這些情況下有什麼不同?

+2

通常的原因是一個未初始化的變量,根據程序啓動的方式獲取不同的隨機值。 –

+0

這取決於envirment var?我如何跟蹤錯誤。 –

+0

它也可能取決於環境。或者它從不同的目錄開始(如果你使用任何文件)。否則,你可能會有類似'int i;'的地方,其中'i'在被賦值之前被使用。 –

回答

5

您需要了解在調試模式和釋放模式下運行應用程序的區別。 F5通常會幫助您調試應用程序,而ctrl + F5將執行該應用程序。在發佈模式中可能會出現一些問題,導致您的vs崩潰。閱讀this以瞭解。

+0

謝謝,但我的問題是所有關於釋放模式一段時間在釋放模式下壓碎(F5 + CTRL)或VC和F5工作過度。 –

+0

@herzlshemuelian:你正試圖在發佈模式下進行調試 – Jeeva

+0

只有在發佈模式(ctrl + F5而不是F5)中才會發生這種情況,我必須這樣做。 –