C++ C++;在windows 8上,启动后立即关闭程序

C++ C++;在windows 8上,启动后立即关闭程序,c++,windows,eclipse,macos,C++,Windows,Eclipse,Macos,我安装了minGW和EclipseCDT,控制台一直在做一些奇怪的事情。程序的代码是 using namespace std; #include <iostream> int main() { cout << "Hello, windows (8, c++)" << endl; //system("PAUSE"); return 0; } 这或多或少会给我相同的效果,但我想知道为什么Windows和OSX做的不同,以及我能做些什么来

我安装了minGW和EclipseCDT,控制台一直在做一些奇怪的事情。程序的代码是

using namespace std;
#include <iostream>

int main() {
    cout << "Hello, windows (8, c++)" << endl;
    //system("PAUSE");
    return 0;
}

这或多或少会给我相同的效果,但我想知道为什么Windows和OSX做的不同,以及我能做些什么来修复它(bc这让我很恼火)。
期待您的回复

这发生在Windows上,因为这只是Windows控制台的行为。如果不希望在程序执行后窗口自动关闭,则必须手动打开控制台,然后通过已打开的控制台运行程序

您可能想看看这些:


这在Windows上发生,因为这只是Windows控制台的行为。如果不希望在程序执行后窗口自动关闭,则必须手动打开控制台,然后通过已打开的控制台运行程序

您可能想看看这些:

不要使用
系统(“暂停”)
,这是错误的,原因很多(请阅读更多信息)

cin.get()
放在
return
之前,窗口将保持打开状态,直到按enter键。

不要使用
系统(“暂停”)
,这是错误的,原因很多(请阅读更多相关信息)


cin.get()
放在
return
之前,窗口将保持打开状态,直到您按enter键。

如果您只想运行控制台程序,您应该打开一个控制台,然后运行它

显然,Eclipse的OSX版本被配置为打开控制台,运行程序,而不是关闭它。也许你也可以配置Win版本

你不应该干预你的程序在另一个平台上表现出不同的行为,而应该将它包装成某种“适应”行为的东西


也许,您可以告诉eclipse使用“yourprogram.exe&&pause”打开一个命令窗口,让它执行您的程序,然后暂停。

如果您只想运行控制台程序,您应该打开一个控制台,然后运行它

显然,Eclipse的OSX版本被配置为打开控制台,运行程序,而不是关闭它。也许你也可以配置Win版本

你不应该干预你的程序在另一个平台上表现出不同的行为,而应该将它包装成某种“适应”行为的东西


也许,您可以告诉eclipse使用“'yourprogram.exe&&pause'”打开一个命令窗口,让它执行您的程序,然后暂停。

只需添加
getch()#include

只需添加
getch()和add
#include

Windows与OSX不同,因为它与OSX不同。这是微软的一个任意设计决定,对于如此多的Windows版本来说都是一样的,不太可能改变。@MarkRansom:…微软的。。。那么Linux呢?为什么操作系统会分配一个控制台来运行程序?@xtofl,当你双击一个控制台程序时,有两种可能的正确结果-显示一个错误,说明你只能从控制台运行这个程序,或者打开一个新的控制台来运行它。打开一个新的控制台显然更方便。我真的不明白为什么他们在这种情况下不把它打开,这也让我很恼火。Windows和OSX做得不同,因为它和OSX不一样。这是微软的一个任意设计决定,对于如此多的Windows版本来说都是一样的,不太可能改变。@MarkRansom:…微软的。。。那么Linux呢?为什么操作系统会分配一个控制台来运行程序?@xtofl,当你双击一个控制台程序时,有两种可能的正确结果-显示一个错误,说明你只能从控制台运行这个程序,或者打开一个新的控制台来运行它。打开一个新的控制台显然更方便。我真的不明白为什么在这种情况下他们不把它打开,这也让我很恼火?我知道你的答案是正确的,我接受它,只是想知道Eclipse是否有任何修复方法。我找到了一些关于如何为控制台设置Eclipse的文档,我会尝试一下(但不保证):1。外部工具2。您应该已经有了运行程序的配置,很可能在其中一个字段中设置了
cmd.exe
的位置。3.在路径的末尾添加“/K”。/K命令可防止窗口自动关闭。我不确定这是否可行,但我知道/K本身可以工作,而且您似乎可以设置
cmd.exe
程序的路径。请让我们知道它是否有效!等等,什么?外部工具?这是在eclipse中吗?@pipsqueaker117这里有一些关于它的更多文档:不幸的是,我没有运行eclipse,所以我无法帮助您,但是尝试看看这是否解决了您的问题将是一件好事。但是eclipse不应该有一些方法阻止它发生吗?我知道你的答案是正确的,我接受它,只是想知道Eclipse是否有任何修复方法。我找到了一些关于如何为控制台设置Eclipse的文档,我会尝试一下(但不保证):1。外部工具2。您应该已经有了运行程序的配置,很可能在其中一个字段中设置了
cmd.exe
的位置。3.在路径的末尾添加“/K”。/K命令可防止窗口自动关闭。我不确定这是否可行,但我知道/K本身可以工作,而且您似乎可以设置
cmd.exe
程序的路径。请让我们知道它是否有效!等等,什么?外部工具?这在eclipse中吗?@pipsqueaker117这里有更多关于它的文档:不幸的是,我没有运行eclipse,所以我无法帮助您
system("PAUSE") //I dont know what I need to import to use this. Could you tell me that too?