文字をバッファリングせずにパイプstdin
することを目的とした単純なCプログラムを作成しました。stdout
#include <stdio.h>
int main (int argc, char *argv[])
{
int c;
while ((c = getchar()) != -1) {
putchar(c);
fflush(stdout);
}
return 0;
}
ただし、このプログラムは、への呼び出しにもかかわらず、改行まで文字をバッファリングしているようfflush
です。なぜこれが起こっているのですか、どうすれば修正できますか (可能な場合)?