0

私はこのコードを持っています

whitespaces は int 型なので、getchar 関数を使用できます

do
{

 ...code...

whitespaces=getchar();}
while ( whitespaces != (EOF) || whitespaces!='\n');

しかし、CTRL + Zを押してもループを終了しません(Windows 7を使用しています)

私は何を間違っていますか?

編集:ありがとう、皆さん...!非常に役立ちます

4

3 に答える 3

5

&&条件の代わりに||使用する必要がありますwhile

于 2012-04-17T19:51:23.147 に答える
1

あなたの状態は正しくありません:

while ( whitespaces != (EOF) && whitespaces!='\n');

\n は自動的に EOF とは異なり、その逆も同様です。

于 2012-04-17T19:51:54.197 に答える
1

を に変更してみて||ください&&。現在、if whitespacesis equal toEOFは改行ではないため、while 条件は常に true です。これはおそらくあなたが望むものではありません。

于 2012-04-17T19:52:23.347 に答える