我开始在Visual c++和我想知道如何保持控制台窗口。
例如,这将是一个典型的“hello world”应用程序:
int _tmain(int argc, _TCHAR* argv[])
{
cout << "Hello World";
return 0;
}
我漏了哪一行?
我开始在Visual c++和我想知道如何保持控制台窗口。
例如,这将是一个典型的“hello world”应用程序:
int _tmain(int argc, _TCHAR* argv[])
{
cout << "Hello World";
return 0;
}
我漏了哪一行?
当前回答
另一种选择是使用
#include <process.h>
system("pause");
虽然这不是很可移植,因为它只能在Windows上工作,但它会自动打印
按任意键继续…
其他回答
只需在_tmain方法的右括号中添加一个断点。这是一种更简单的方法,而且你不需要为了调试而添加代码。
另一种选择是使用
#include <process.h>
system("pause");
虽然这不是很可移植,因为它只能在Windows上工作,但它会自动打印
按任意键继续…
正如一些人已经指出的那样,zoidberg的解决方案没有附加调试器,这是您通常不希望看到的。
在我看来,最好的选择是相应地配置你的VS(从VS 2017开始),通过到工具>选项>调试>通用。在这里,您取消选中“调试停止时自动关闭控制台”(在最底部),在您的情况下,可能选中了该选项。
实际上,真正的解决方案是项目模板本身的选择。 你必须在旧的VS中选择Win32控制台应用程序,或者先填写项目名称,然后双击Windows桌面向导,然后选择Win32控制台应用程序。然后在此时选择空项目。然后,这允许原始提问者真正想要的东西,而无需添加额外的停止点和保持代码。 我也遇到过这个问题。答案也在MSDN网站上。
只需要在main的最后一个花括号上加一个断点。
int main () {
//...your code...
return 0;
} //<- breakpoint here
它适合我,不需要调试就可以运行。它还会在到达断点之前执行析构函数,这样您就可以检查在这些析构函数上打印的消息(如果有的话)。