C++學習第14篇-I/O流

來源:互聯網
上載者:User

1. I/O流

I/O功能不是C++語言的一部分;是通過C++標準庫iostream而來的;

1)iostream庫:


2)流

在C++中,I/O處理是以流的形式;流是一隊有序的有限的位元組,亦稱作緩衝池。

主要有兩種流-輸入資料流和輸出資料流。

3)C++中的輸入輸出

ios是最常用的輸入輸出基類;istream和ostream處理輸入輸出的原始類;

4)C++中的標準流

主要有:cin、cout、cerr和clog

cin主要是針對鍵盤輸入,而後3中主要是顯示屏輸出。

cerr是非緩衝類型的輸出,即可處理類型;而clog是緩衝類型,以塊的形式輸出。


2. 輸入資料流

iostream是非常複雜的庫,這裡討論最常用的部分。

所有的I/O函數都在std命名空間中;

1)提取運算子

>>是輸入的提取運算子,通常處理的是內建資料類型;可以重載來處理自訂資料類型。

2)提取和空白符號

可以通過>>輸入單個字元,但會忽略空白符;採用cin.get(ch)可以將空白符記下;

也可以通過cin.get(buf,length)來擷取指定長度的輸入;

也可以通過cin.getline(buf,length)來擷取指定長度的輸入;

應用在string字串的輸入:getline(cin,str)。

一些比較有用的istream函數:

ignore(),拋棄流中的第一個字元;ignore(int count),拋棄流中前count個字元;

peek(),讀取流中的一個字元,但不從流中剔除;upget()返回上一次取出的字元;putback(char ch)將某個字元放迴流中。

待續……

【免責特此聲明:
1)本內容可能是來自互連網的,或經過本人整理的,僅僅代表了互連網和個人的意見和看法!
2)本內容僅僅提供參考,任何參考該內容造成任何的後果,均與原創作者和本部落格作者無關!】

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.