【发布时间】:2012-12-12 06:07:55
【问题描述】:
我安装了 minGW 和 eclipse CDT,但控制台一直在做一些奇怪的事情。该程序的代码是
using namespace std;
#include <iostream>
int main() {
cout << "Hello, windows (8, c++)" << endl;
//system("PAUSE");
return 0;
}
你们都知道,它是 Hello World 程序。现在,当我运行它时,Eclipse 控制台会显示一些关于构建的内容,然后变为空白。当我在资源管理器中导航到 HelloWorldProgram.exe 并运行它时,一个窗口会闪现并显示“hello world”,然后立即关闭。当我在 Mac OSX 上执行此操作时,没有问题,并且窗口会一直保持到我决定关闭它为止。现在我知道有一个命令
system("PAUSE") //I dont know what I need to import to use this. Could you tell me that too?
这会给我或多或少相同的效果,但我想知道为什么 Windows 的做法与 OSX 不同,以及我能做些什么来修复它(这让我很恼火)。 期待您的回复!
【问题讨论】:
-
Windows 的做法与 OSX 不同,因为它与 OSX 不同。这是 Microsoft 做出的任意设计决定,对于许多版本的 Windows 来说都是相同的,因此不太可能改变。
-
@MarkRansom: ..by Microsoft...和 Linux?为什么会操作系统分配控制台来运行程序?
-
@xtofl,当您双击控制台程序时,有两种可能的正确结果 - 显示一个错误,说明您只能从控制台运行它,或者打开一个新的控制台来运行它。打开一个新的控制台显然更方便。我真的不明白他们为什么在这种情况下不保持开放,这也让我很烦。