【发布时间】:2013-09-30 14:27:46
【问题描述】:
我有一个非常奇怪的问题。我正在使用 C++ 中的 Visual Studio,突然 cout 在发布模式下无法正常工作(它一直工作到现在),而在调试模式下它工作正常。我不知道为什么会这样。我试图删除一些代码并且我删除了几乎所有的程序(我有备份)。这是我的代码:
#include "stdafx.h"
#include <stdio.h>
#include <iostream>
using namespace std;
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR szCmdLine, int iCmdShow )
{
AllocConsole();
cout<<"asdasd"<<endl;
cin.get();
return 1;
}
在调试模式下,程序等待用户按 Enter。在发布模式下不会。窗口刚刚关闭。
我认为这可能是视觉设置的问题。可以吗?
【问题讨论】:
-
用
cin.get();替换while(true);。 -
我替换了,程序在发布模式下“闪烁”。窗口刚刚出现并关闭
-
你在做的时候有没有拿钥匙?释放模式配置通常意味着控制台在程序完成后立即关闭,但由于
cin.get(),它应该等待按键。你确实把cin.get()之前return 1;,对吧? -
是的,别担心,我做到了。它只是跳过了那个功能..奇怪:/我编辑了帖子。