大家好,小弟是最近开始使用emacs的新手,因为同时在学C语言,便想使用 emacs同时进行编辑、编译及测试。(操作系统为windows 7) 在编辑与编译方面没有太大问题,然而,在执行时出现了一些小问题。 先附上所使用的C code,这是"深入浅出 C"书中第7页的例子: int main() { char card_name[3]; puts("Enter the card_name: "); scanf("%2s", card_name); int val = 0; if (card_name[0]=='A') { val = 11; } else { val = atoi(card_name); } printf("The card value is: %i\n", val); return 0; } 在emacs的shell-mode编译后执行结果: c:\home\c\HFC>gcc cards.c -o cards gcc cards.c -o cards c:\home\c\HFC>cards cards A <-在这里就要输入scanf值了 Enter the card_name: <-puts输出结果在要求输入后 The card value is: 11 在windows原生的命令列模式下执行倒是跟预期相同的, windows执行结果: c:\home\c\HFC>cards Enter the card_name: A The card value is: 11 顺带一提,emacs的eshell模式下执行的结果: c:/home/c/HFC $ ./cards.exe A <-仍然是在puts结果前要求输入 Enter the card_name: The card value is: 11 目标只是想在emacs的shell或eshell模式下输出与windows 命令列相同的结果,毕竟都在emacs下工作了,要再多开windows 的命令列来执行实在有点落漆,不知各位大大有没有什么好 的建议? 况且未来可能会需要记录输入输出结果,这时候 emacs的shell或eshell就蛮方便的。 以上,希望各位先进大大能不吝告知!! 先谢谢了!!