2009-04-23 61 views
3

有什麼方法可以在Visual Studio.NET中調試單個文件? 我仍然是C++的noob,但我想開始學習如何使用調試器,因爲現在我正在編寫非常小的文件。如何在Visual Studio中調試單個.cpp文件?

看來如果只有一個源文件,它不會讓我調試,但是當我添加另一個源文件時,我可以。我正在使用VS.net 2008.

回答

9

它不需要另一個源文件,它需要一個項目文件。

Visual Studio需要大量的信息來了解如何編譯和調試源代碼。比如使用哪種優化設置,在哪裏尋找boost頭文件等等。

試試這個:去File->New->Project...並選擇一個win32控制檯應用程序。在下一個嚮導中,轉到Application Settings,並選中「空項目」,然後點擊確定。

現在您已經有空的項目和解決方案文件,您可以隨時隨地複製/粘貼文件;要調試,只需打開.sln文件,拖動您的單個文件.cpp,然後按F5。

+0

我在想同一個確切的想法,每次最少的設置。如果我知道這是我贏得的東西; t調試,我只是打開一個文本編輯器並從命令行編譯,但這將適用於大一點的程序。謝謝! – patricksweeney 2009-04-23 14:23:16

1

您是否正在嘗試調試此cpp中定義的主例程?您添加的cpp是否使其有效?

你總是可以編譯cpp文件,但語言定義應用程序的入口點是

int main() 
{ 
} 

(或使用的argv/argc個命令行參數的簽名,但在這裏,那不是很重要) 。

0

在VS.net 2008中創建Visaul C++控制檯應用程序,並將要調試的cpp文件添加到項目中。

在主例程中調用該cpp文件中定義的函數,該函數將在創建控制檯項目時由VS.Net 2008爲您創建。

0

我調試通過:

  • 把一個斷點,我想。
  • 在Visual Studio中構建應用程序。
  • 按F5開始使用 調試應用程序(如果一個dll你 調試,你要設置項目 屬性調用該DLL的EXE )。
  • 利潤! :)

如果斷點從通常的紅點變成黃色三角形,那麼這意味着你沒有調試你認爲你的代碼 - 通常這發生在你的dll沒有加載時。如果你正在調試一個exe文件,那麼你不會看到這個。

此外,請確保您已經構建(並具有項目類型)爲調試。

0

您需要創建一個可以調試的解決方案。之後,你有多少源文件並不重要。您可以使用File-> New菜單創建解決方案。

0

每當我想快速調試一個控制檯程序,我發現控制檯是最好的開始。所以,我把一個C++程序(blah.cpp):

int main() 
{ 
    for (int i = 0; i < 100; i++) 
     printf ("Hello World ... etc \n"); 
} 

然後設置我的環境控制檯(從CMD.EXE)上:

vcvars32 

然後編譯我的程序(該字是如此我得到一個blah.pdp調試):

cl /Zi blah.cpp 

而瞧,我有一個blah.exe,我可以運行。如果我想調試blah.exe,我只需從VS2008打開一個項目並選擇blah.exe而不是項目文件。我可以在IDE中打開blah.cpp並運行(F5),設置斷點(F9)並通常調試到我的心中(F10,F11)。

1

線程相當老,但我的答案可能會幫助其他人,因爲我面臨同樣的問題。我使用Bloodshed DevC++編譯單個C++文件。無需使用Visual Studio創建整個項目。