C ++ Eclipse:stdin在不同于stdout的控制台中

时间:2013-12-12 20:01:59

标签: c++ linux eclipse console-application

我在Linux上遇到了一个奇怪的Eclipse。

我有一个简单的C ++控制台程序,它将一些消息输出到stdout(cout),它显示在名为“Default [C / C ++ Application] ApplicationName”的控制台中,其中“ApplicationName”是我的可执行文件的名称。

当我尝试使用getchar()读取字符时,此控制台不会对任何输入做出反应。 我必须将控制台切换到另一个名为“默认[C / C ++应用程序] gdb”的控制台,我可以在其中输入一条消息,然后由getchar()读取。

所以看起来stdin和stdout在调试期间被路由到不同的控制台。如果从Eclipse之外的控制台窗口运行没有调试器的应用程序,一切正常。

如何让Eclipse使用相同的控制台进行输入和输出。

我现在安装了最新版本的Eclipse Keppler,问题仍然存在。

2 个答案:

答案 0 :(得分:0)

我正在使用ubuntu 12和eclipse kepler并使用相同的控制台对其进行编程以进行输入和输出。我已经使用和不使用GDB进行了测试。

用于C / C ++开发人员的Eclipse IDE 版本:开普勒服务版本1 建造ID:20130919-0819

答案 1 :(得分:0)

我的是Linux Mint上的Indigo。这是我从“App-Store”获得的版本。 将尝试安装新版本。感谢。