首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于在Emacs里直接打开shell运行程序输入输出有关问题

2012-02-14 
关于在Emacs里直接打开shell运行程序输入输出问题本人刚开始学Emacs写了一个c程序 gcc-4编译成功emacs里打

关于在Emacs里直接打开shell运行程序输入输出问题
本人刚开始学Emacs
写了一个c程序 gcc-4编译成功
emacs里打开eshell或者cygwin 运行编译后的可执行程序
但是我发现为什么要等待所有输入结束以后才能够输出:
例如:

C/C++ code
scanf("%d", &a);printf("%d", a);scanf("%d", &b);printf("%d", b);

运行时会输入一个数字a回车后,提示继续输入第2个b后,屏幕才能把a b逐一输出。

那么若写一个循环输入输出:
C/C++ code
x = scanf("%d", &x);while(x != EOF){   printf("%d", x);   x = scanf("%d", &x);}


那么程序会一直不断地提示叫你输入而不输出任何内容,并不是输入回车后显示一个后再继续提示输入。
这是在Emacs里直接运行SHELL的结果。

如果直接在WINDOWS下点击生成的.EXE程序,在CMD中运行或者直接在cygwin的shell中运行(而不是在emacs里打开shell运行),
却能够每次输入回车后显示一个后再继续提示输入。
Emacs出了什么问题?初学,想不明白

[解决办法]
刷新一下,强制输出试试

热点排行