欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++讀取單個(gè)字符操作示例詳解

 更新時(shí)間:2023年09月28日 11:25:30   作者:向陽逐夢  
這篇文章主要為大家介紹了C++讀取單個(gè)字符操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

get() istream類成員函數(shù)

get() 是 istream 類的成員函數(shù),它有多種重載形式,不過本文只介紹最簡單最常用的一種:

int get();

此函數(shù)從輸入流中讀入一個(gè)字符,返回值就是該字符的 ASCII 碼。

EOF

如果碰到輸入的末尾,則返回值為 EOF。EOF 是 End of File 的縮寫。

istream 類中從輸入流(包括文件)中讀取數(shù)據(jù)的成員函數(shù),在把輸入數(shù)據(jù)都讀取完后再進(jìn)行讀取,就會(huì)返回 EOF。

EOF 是在 iostream 類中定義的一個(gè)整型常量,值為 -1。get() 函數(shù)不會(huì)跳過空格、制表符、回車等特殊字符,所有的字符都能被讀入。例如下面的程序:

    #include <iostream>
    using namespace std;
    int main()
    {
        int c;
        while ((c = cin.get()) != EOF)
            cout.put(c);
        return 0;
    }

程序運(yùn)行情況

http://c.biancheng.net/cplus/↙
http://c.biancheng.net/cplus/
C++ Tutorial↙
C++ Tutorial
^Z↙

表示回車鍵,^Z表示 Ctrl+Z 組合鍵。

程序中的變量 c 應(yīng)為 int 類型,而不能是 char 類型。在輸入流中碰到 ASCII 碼等于 0xFF 的字符時(shí),cin.get() 返回 0xFF,0xFF 賦值給 c,此時(shí)如果 c 是 char 類型的,那么其值就是 -1(因?yàn)榉?hào)位為 1 代表負(fù)數(shù)),即等于 EOF,于是程序就錯(cuò)誤地認(rèn)為輸入已經(jīng)結(jié)束。

而在 c 為 int 類型的情況下,將 0xFF 賦值給 c,c 的值是 255(因?yàn)榉?hào)位為 0,是正數(shù)),而非 -1,即除非讀到輸入末尾,c 的值都不可能是 -1。

要將文本文件 test.txt 中的全部內(nèi)容原樣顯示出來,程序可以如下編寫:

    #include <iostream>
    using namespace std;
    int main()
    {
        int c;
        freopen("test.txt", "r", stdin);  //將標(biāo)準(zhǔn)輸入重定向?yàn)?test.txt
        while ((c = cin.get()) != EOF)
            cout.put(c);
        return 0;
    }

以上就是C++讀取單個(gè)字符操作示例詳解的詳細(xì)內(nèi)容,更多關(guān)于C++讀取單個(gè)字符操作的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C++中的三大函數(shù)和操作符重載(Boolan)

    C++中的三大函數(shù)和操作符重載(Boolan)

    本文主要介紹了C++中的三大函數(shù)和操作符重載(Boolan)的相關(guān)知識(shí)。具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2017-02-02
  • VSCode遠(yuǎn)程代碼開發(fā)及DNS隧道端口轉(zhuǎn)發(fā)實(shí)現(xiàn)遠(yuǎn)程辦公代碼

    VSCode遠(yuǎn)程代碼開發(fā)及DNS隧道端口轉(zhuǎn)發(fā)實(shí)現(xiàn)遠(yuǎn)程辦公代碼

    這篇文章主要介紹了VSCode遠(yuǎn)程代碼開發(fā)及DNS隧道端口轉(zhuǎn)發(fā)實(shí)現(xiàn)遠(yuǎn)程辦公,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • C語言實(shí)現(xiàn)餐廳點(diǎn)餐系統(tǒng)

    C語言實(shí)現(xiàn)餐廳點(diǎn)餐系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)餐廳點(diǎn)餐系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • OpenCV reshape函數(shù)實(shí)現(xiàn)矩陣元素序列化

    OpenCV reshape函數(shù)實(shí)現(xiàn)矩陣元素序列化

    reshape函數(shù)是OpenCV中一個(gè)很有用的函數(shù),不僅可以改變矩陣的通道數(shù),還可以對(duì)矩陣元素進(jìn)行序列化。本文將主要介紹如何通過reshape實(shí)現(xiàn)矩陣元素序列化,需要的小伙伴可以參考一下
    2021-12-12
  • C++ 字符串string和整數(shù)int的互相轉(zhuǎn)化操作

    C++ 字符串string和整數(shù)int的互相轉(zhuǎn)化操作

    這篇文章主要介紹了C++ 字符串string和整數(shù)int的互相轉(zhuǎn)化操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • C++ 冒泡排序數(shù)據(jù)結(jié)構(gòu)、算法及改進(jìn)算法

    C++ 冒泡排序數(shù)據(jù)結(jié)構(gòu)、算法及改進(jìn)算法

    冒泡排序是一種簡單排序。這種排序是采用“冒泡策略”將最大元素移到最右邊。在冒泡過程中,相鄰兩個(gè)元素比較,如果左邊大于右邊的,則進(jìn)行交換兩個(gè)元素。這樣一次冒泡后,可確保最大的在最右邊。然后執(zhí)行n次冒泡后排序即可完畢
    2013-04-04
  • OpenCV基于距離變換和分水嶺實(shí)現(xiàn)圖像分割

    OpenCV基于距離變換和分水嶺實(shí)現(xiàn)圖像分割

    圖像分割是根據(jù)灰度、顏色、紋理和形狀等特征,把圖像分成若干個(gè)特定的、具有獨(dú)特性質(zhì)的區(qū)域。本文將基于距離變換和分水嶺實(shí)現(xiàn)圖像分割,需要的可以了解一下
    2022-09-09
  • Qt QMessageBox類使用教程

    Qt QMessageBox類使用教程

    QMessageBox類提供一個(gè)模態(tài)對(duì)話框,用于通知用戶或詢問用戶一個(gè)問題并接收答案。這篇文章主要介紹了QMessageBox的一些常用用法,需要的小伙伴快來學(xué)習(xí)一下
    2021-12-12
  • 詳細(xì)解析C語言中的開方實(shí)現(xiàn)

    詳細(xì)解析C語言中的開方實(shí)現(xiàn)

    這篇文章主要介紹了詳細(xì)解析C語言中的開方實(shí)現(xiàn),包括一道要求精度的整數(shù)開方的題目,需要的朋友可以參考下
    2015-08-08
  • C++的對(duì)象特性和友元你真的了解嗎

    C++的對(duì)象特性和友元你真的了解嗎

    這篇文章主要為大家詳細(xì)介紹了C++的對(duì)象特性和友元,使用數(shù)據(jù)庫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02

最新評(píng)論