0

重複の可能性:
C の EndOfFile - EOF

K&Rの例を試していました。ctrl+c押さないとこのコードが終了しない理由がわかりません。

int main ( )
{
    int c; 
    c = getchar(); 
    while(c!=EOF)
        {
            putchar(c);   
            c=getchar();
        }
}

どんな助けでも大歓迎です。ありがとう!

編集: Windows の使用 (Visual Studio 2010)

4

3 に答える 3

8

CtrlWindowsでは、 +を押して、標準の入力ストリームからファイルの終わりを生成しますZ。バッファリングの動作によっては、を押す必要がある場合もありますReturn

于 2012-09-17T12:07:23.913 に答える
5

EOFはファイルの終わりです。'keyboard'から読み取る場合は、Returnキーを押すのと同じ行末記号と比較する必要があります。

int main ( )
{
    int c; 
    c = getchar(); 
    while(c!= '\n')
    {
        putchar(c);   
        c=getchar();
    }
}
于 2012-09-17T12:06:03.063 に答える
-1
On Windows machine ctrl+c acts as delimiter of character scanning same as EOF 
on this loop gets broken otherwise it will keep looking for characters
于 2012-09-17T12:14:45.003 に答える