c語言中將輸入的字符直接輸出


c語言中將輸入的字符直接輸出

getchar函數 和EOF

getchar函數用於讀取字符並返回,(getchar和putchar都只處理一個字符); EOF是對象式宏,為一個負值。

1、

#include <stdio.h>

int main(void) { int ch; while((ch = getchar()) != EOF) { putchar(ch); } return 0; }

以上程序為while循環控制語句,循環判斷語句是 (ch = getchar()) != EOF;   函數getchar讀取字符並返回給ch, 然后判斷ch是否等於EOF, 如果判斷結果為1,則執行循環體。

程序並不是讀取一個字符就直接輸出,而是輸入回車鍵后輸出,這是因為c語言中輸入和輸出一般會將讀入的字符和帶輸出的字符暫時保存在緩存中,輸入回車鍵后才運行實際的輸入輸出操作。

 

 

2、以上程序等價於:

#include <stdio.h>

int main(void)
{
    while(1)
    {
        int ch;
        ch = getchar();
        if(ch == EOF)
            break;
        putchar(ch);
    }
}

 

 while(1)為無限循環語句,循環體中使用if語句對程序結束做出設定。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM