ここに私のコードです。私は端末でubuntuで実行します。ターミナルで(CtrlD)を入力すると、プログラムは停止せずに入力を待っていました。ctrl-dはwhile(getchar()!= EOF)ループを停止しませんでした
CtrlDはUNIXのEOFと同じですか?
ありがとうございます。
#include<stdio.h>
main() {
int d;
while(d=getchar()!=EOF) {
printf("\"getchar()!=EOF\" result is %d\n", d);
printf("EOF:%d\n", EOF);
}
printf("\"getchar()!=EOF\" result is %d\n", d);
}
これは再帰ではありません。あなたが入力をEOLするまでは無限ループです。再帰=直接関数を呼び出したり、他の中間ステップ数を呼び出した関数。 –
gccで '^ D 'を押すとループが止められました。 –
@JonLin^Dを入力するだけで、私にとってもうまくいきます。しかし、入力が(a^D)の場合、ループは停止しませんでした。 – Sam