我有一个C++应用程序,我需要发送一个传输结束信号.
我可以在控制台上做一个Ctrl+ D,但是当我在Eclipse中尝试它时,它不起作用.
我正在使用带有CDT的Eclipse Galileo.
Von*_*onC 21
这似乎是一个 尚未解决的bug:错误159803(2015年9月解决,CDT 9.0)
从Eclipse 3.1开始,可以在控制台视图中发出信号
EOF
(在密钥首选项中使用CTRL+ D/ Z- bindable),并使用简单的Java应用程序使用Eclipse 3.2.1成功测试了这一点.
另一方面,CDTEOF
在控制台视图中无法识别.
但有一个例外.如果我在主配置选项卡中运行C/C++本地应用程序并取消选中"
Connect process input & output to a terminal
",则控制台视图将识别EOF
.但是,在Debug透视图中,此更改不会影响控制台视图.因此,在调试时,我仍然无法
EOF
向正在运行的应用程序发送信号.
虽然它被认为是"已解决",但此评论显示该问题仍然存在.
更新4年后(2014年12月),Fernando Gonzalez-Sanchez 在评论中提到:
UI中不再提供解决方法复选框.
OpenSUSE 12和Eclipse CDT Luna 4.4.1中仍然存在问题.
2015年3月更新:
在Linux上的Kepler 4.3 eclipse.buildId = 4.3.0.M20130911-1000中,Java控制台中仍然存在问题.我找到了以下解决方法:
"如果您让控制台专注于另一个视图,然后重新聚焦在控制台上,那么Ctrl- D(EOF)将按预期工作."