0

emacsでpowershellを使いたいのですが、emacsのpowershellがブロックバッファリングされているようです。たとえば、次のような単純な c プログラムを作成すると、次のようになります。

int main()
{
 printf("input the number of a value: \n");
 scanf("%d", &num);
}

私はそれをコンパイルし、emacs の下の Powershell で実行します。input the number of a value:数字を入力してヒットするまで、行は出力されませんEnter。c プログラムは、emacs 外の powershell で適切に実行されます。私の質問は、emacs でバッファリングされた PowerShell 行を実行するにはどうすればよいですか?

編集Powershell.elを使用します

4

3 に答える 3

0

fflushの前にする必要がありfscanfます。

于 2012-10-20T15:42:31.607 に答える
0

これは私にとってはうまくいきますeshell

#include <stdio.h>

int main() {
  int num;
  printf("input the number:\n");
  fflush(stdout);
  scanf("%d", &num);
  printf("inc: %d\n", num + 1);
}

別の問題があるため、問題を再現できませんpowershell.elでした。入力を待たず、代わりに0を「読み取り」、「inc:1」を出力して終了します。

于 2012-10-24T14:04:51.973 に答える