我开始在Visual c++和我想知道如何保持控制台窗口。

例如,这将是一个典型的“hello world”应用程序:

int _tmain(int argc, _TCHAR* argv[])
{
    cout << "Hello World";
    return 0;
}

我漏了哪一行?


当前回答

sin .get()或system("PAUSE")。 我没听说过你可以用return(0);

其他回答

你可以把 keep_window_open (); 在返回之前,这里有一个例子

int main()
{
    cout<<"hello world!\n";
    keep_window_open ();
    return 0;
}

就在你的include之后 YW std:: cin.clear ();//重置任何错误标志 std:: cin.ignore (std:: numeric_limitsstd:: streamsize:: max (), ' \ n ');//忽略输入缓冲区中的任何字符,直到找到一个输入字符 std:: cin.get ();//从用户那里再获取一个字符

在main()的结束大括号上放置断点。即使有多个return语句,它也会被绊倒。唯一的缺点是对exit()的调用不会被捕获。

如果你没有调试,按照Zoidberg回答中的建议,用Ctrl+F5来启动你的程序,而不是只用F5。

我也有同样的问题;在我的应用程序中有多个exit()点,没有办法知道它到底在哪里退出,然后我发现了这一点:

atexit(system("pause"));

or

atexit(cin.get());

这样,无论我们退出程序的哪个位置,它都会停止。

实际上,真正的解决方案是项目模板本身的选择。 你必须在旧的VS中选择Win32控制台应用程序,或者先填写项目名称,然后双击Windows桌面向导,然后选择Win32控制台应用程序。然后在此时选择空项目。然后,这允许原始提问者真正想要的东西,而无需添加额外的停止点和保持代码。 我也遇到过这个问题。答案也在MSDN网站上。