2017-11-15 6 views
0
#include<stdio.h> 
int main(){ 
    int c = getchar(); 
    while(c != EOF){ 
     putchar(c); 
     c = getchar(); 
    } 
} 

cがEOFになった後、プログラム自体によって終了しない理由は?コード>今の 参考:K & Rは、Cプログラミング言語の第2版です、 ページ:ファイルの終わりに達した場合にのみ、18GETCHAR()のputchar(CHAR)、EOF

+0

: これは、のように記述することができます。リターンを打つだけでgetchar()がEOF(-1)を返すことはありません。 – Scooter

答えて

0

getchar関数()はEOFを返します。ここの「ファイル」は標準入力そのものです。私はUbuntu Linuxの端子で入力として 入力したときにそれが私のために終了

#include <stdio.h> 
    int main() 
    { 
    int c; 
    while ((c = getchar()) != EOF) 
    { 
    /*getchar() returns the the next available value which is in the input 
    buffer*/  
    putchar(c); 
    } 
    } 
+0

上記で修正したコードがEOF終了プログラムに単独で届くことになると主張していないことを確認してください –

関連する問題