如何在Visual Studio中调试单个.cpp文件?

时间:2009-04-23 13:49:11

标签: c++ visual-studio-2008 debugging

有没有办法在Visual Studio.NET中调试单个文件? 我仍然是一个使用C ++的菜鸟,但我想开始学习如何使用调试器,现在我正在编写非常小的文件。

似乎只有一个源文件,它不会让我调试,但是当我添加另一个时,我可以。我正在使用VS.net 2008。

7 个答案:

答案 0 :(得分:9)

它不需要另一个源文件,它需要一个项目文件。

Visual Studio需要大量信息才能知道如何编译和调试源代码。诸如使用哪种优化设置,在哪里查找boost标题等等。

试试这个:转到File->New->Project...并选择一个win32控制台应用程序。在下一个向导中,转到Application Settings,然后选中“清空项目”,然后单击“确定”。

现在您有空的项目和解决方案文件,您可以将它们复制/粘贴到任何您想要的位置;要调试,只需打开.sln文件,拖入单个.cpp文件,然后点击F5。

答案 1 :(得分:1)

您是否正在尝试调试此cpp中定义的主例程?你添加的cpp是否有效?是什么?

您始终可以编译cpp文件,但该语言将应用程序的入口点定义为

int main()
{
}

(或带有argv / argc命令行args的签名,但这在这里并不重要。)

答案 2 :(得分:1)

这个帖子很老了,但是当我遇到同样的问题时,我的回答可能对其他人有帮助。 我使用Bloodshed DevC++来编译单个C ++文件。无需使用Visual Studio创建整个项目。

答案 3 :(得分:0)

在VS.net 2008中创建Visaul C ++控制台应用程序,并将要调试的cpp文件添加到项目中。

从主例程调用该cpp文件中定义的函数,当您创建控制台项目时,VS.Net 2008将为您创建该函数。

答案 4 :(得分:0)

我调试:

  • 把断点放在我想要的地方。
  • 在Visual Studio中构建应用程序。
  • 按F5启动应用程序 调试器(如果它是你的dll 调试,你要设置exe 在项目中调用dll 属性)。
  • 的利润! :)

如果断点从通常的红点变为黄色三角形,那么这意味着您没有调试您认为自己的代码 - 通常在您的dll未加载时会发生这种情况。如果您正在调试exe,那么您将看不到这一点。

另外,请确保已构建(并具有项目类型)作为Debug。

答案 5 :(得分:0)

您需要创建一个能够进行调试的解决方案。之后,您拥有多少源文件并不重要。您可以使用File-> New菜单创建解决方案。

答案 6 :(得分:0)

每当我想快速调试控制台程序时,我发现控制台是最好的起点。所以我采用一个C ++程序(blah.cpp):

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

然后在控制台上设置我的环境(来自cmd.exe):

vcvars32

然后编译我的程序(Zi是这样我得到一个blah.pdp来调试):

cl /Zi blah.cpp

瞧,我有一个可以运行的blah.exe。如果我想调试blah.exe我只是从VS2008打开一个项目并选择blah.exe而不是项目文件。我可以在IDE中打开blah.cpp并运行(F5),设置断点(F9)并通常调试我的内容(F10,F11)。