日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IO类

發布時間:2025/6/15 编程问答 7 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IO类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

幾種IO類型:

iostream:從流(讀或寫)數據 ?, fstream:從文件(讀或寫)數據 ,sstream:從string中(讀或寫)數據,某個流類型前面有'w'表示寬字符的版本。

?

IO類型之間的關系:

設備類型和字符大小都不會影響執行的IO操作,這是由于繼承機制的原因,fstream和sstream都繼承iostream,其中cin和cout,fstream和sstream都可以使用。

?

IO對象無拷貝或賦值:?

? ? ? ? ?ofstream out1,out1;//其中o(output)代表輸出,f代表文件(file),定義了兩個文件輸出對象

? ? ? ? ?out1=out2;//錯誤,你能對流對象賦值

? ? ? ? ?ofstream print(ofstream);//錯誤不能初始化ofsream參數

? ? ? ? ?out1=print(out1);//錯誤,不能拷貝流對象

?

條件狀態:

IO操作可以發生一些錯誤,IO類定義了一些函數和標志,可以幫助我們訪問和操作流的條件狀態。一個流一旦發生錯誤,其后續的IO操作都會失敗,所以對它的檢測是必要的。

?

#include<iostream>using namespace std;int main() {int word;while(cin>>word){cout<<word;}return word; }

輸入:1b2

?

打印:1
看結果就可以知道,當流接收的b的輸入時,出錯了。word本身只接受int型, 而卻輸入了char型,則后續的IO都失敗了。所以2沒有被打印出來

?

? ? ? ?查詢流的狀態:有時候我們也需要流為什么失敗,因為對每個錯誤的原因,處理方式是不同的。

? ? ? ?strm::iostate,strm是一種IO類型,iostate是一種機器相關類型,提供了表達條件狀態的完整性

? ? ? ?strm::badbit,其表示流已崩潰

? ? ? ?strm::failbit,其用來指出一個IO操作失敗了

? ? ? ?strm::eofbit,其指出流達到了文件結束

? ? ? ?strm::goodbit,其指出流為出現錯誤狀態,此值保證為0

? ? ? badbit表示系統初級錯誤(如不可恢復的讀寫錯誤),一般badbit被置位,流就無法使用了。在發生可恢復性錯誤后,failbit被置位,這種問題通常是可以 ? ? ? ? 修正的,流還可以繼續使用。在到達文件結束位置,eofbit和failbit都會被置位。goodbit的值為0,保證未發生錯誤。如果badbit,failbit和eofbit任一個被置 ? ? ? ?位,則檢測流狀態的條件會失敗。

? ? ? ?s.eof(),a.fail(),s.bad() ,s.good()這些函數查詢這些標志位的狀態

? ? ? ?s.rdstate() ,返回流s當前的狀態,返回值類型為strm::iostate

? ? ? ?s.setstate(flags),根據給定的flags標志位,將流s中對應條件狀態位置位。flags的類型為strm::iostate。返回void

? ? ? ?

? ? ? ?

? ? ? ?管理條件狀態:

? ? ? ?流對象的rdstate成員返回一個iostate值,對應流的當前狀態。setstate操作將給定條件位置位,表示發生了對應的錯誤。

? ??

? ? ? ?管理輸出緩沖:

? ? ? 每個輸出流都管理一個緩沖區,用來保存程序讀寫的數據。有了緩沖機制,操作系統就可以將程序的多個輸出操作組合成單一的系統級寫操作,由于設備 ? ? ? ? 的寫操作耗時,這樣可以節約時間。

? ? ? 導致緩沖區刷新:

? ? ? 程序正常結束,作為main函數的return操作的一部分,緩沖刷新被執行

? ? ? 緩沖區滿時,需要刷新緩沖,而后新的數據才能繼續寫入緩沖區

? ? ?我們可以使用操作如enndl來顯示刷新緩沖區

? ? ?在每個輸出操作之后,我們可以使用操縱符unibuf設置流的內部狀態,來情況緩沖區,對cerr是設置unibuf的,因此寫到cerr的內容都是立即刷新

? ? ?一個輸出流可能被關聯到另一個流。當讀寫到關聯的流時,關聯的到流的緩沖區會被立即刷新

? ? flush,ends能像endl一樣刷新緩沖區。ends還要向緩沖區插入一個空字符,然后刷新緩沖區。

? ??

cout<<"haha"<<endl;//刷新,換換cout<<"hehe"<<flush;//刷新cout<<"hoho"<<ends;//輸出hoho再加一個空字符,刷新

? ?

cout<<unibuf;//所有輸出都立即刷新緩沖區cout<<nounitbuf;//回到正常的緩沖方式

? ? 如果程序出現錯誤,則輸出緩沖區不會被刷新

?

? ??

? ? ??

總結

以上是生活随笔為你收集整理的IO类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产jizz| 亚洲做受高潮 | 人成免费在线视频 | 亚洲加勒比在线 | 亚洲av成人精品一区二区三区在线播放 | 无码精品人妻一区二区 | 成年人观看视频 | 日本少妇bb | 国产精品成人一区 | 大尺度舌吻呻吟声 | 一级黄色毛毛片 | 免费在线激情视频 | 最近中文字幕免费视频 | 999热 | 久操免费视频 | 日韩无 | 99久久精品日本一区二区免费 | 男欢女爱久石 | 亚洲av无码精品一区二区 | 欧美亚洲一区二区三区四区 | 爱搞逼综合网 | 97在线超碰 | 又欲又污又肉又黄短文 | 麻豆91网站| 国产一区二区三区视频免费观看 | 高清无码视频直接看 | 蜜桃成人免费视频 | 性感美女被爆操 | 黄色成人在线视频 | 咪咪av| 亚洲品质自拍视频网站 | 美女av毛片| 午夜视频网站在线观看 | 欧美一区二区三区婷婷 | 中国久久久久 | 国产粉嫩白浆 | 亚洲美女屁股眼交3 | 免费在线看污 | www.av72| 美女一区二区三区 | 强开小受嫩苞第一次免费视频 | 另类在线视频 | 欧美日韩中文字幕在线观看 | 成人一级大片 | 国产福利视频一区二区 | 成人里番精品一区二区 | 肉色超薄丝袜脚交69xx | 亚洲综合资源 | 先锋av网| 男人靠女人免费视频网站 | 久久婷婷色综合 | 亚洲精品少妇久久久久久 | 欧美肥老妇视频九色 | 黄色.com| 国产精品无码久久久久久电影 | 亚洲精品h | 人妻av无码一区二区三区 | 日韩精品人妻一区 | 亚洲三级免费 | 日本三级播放 | 白丝校花扒腿让我c | 爱爱网视频 | 国产精品成人av久久 | 999在线观看视频 | 91视频精品 | 爆操av| 久久精精品久久久久噜噜 | 豆花视频在线 | 一区久久久 | 一级全黄裸体免费观看视频 | av成人在线免费观看 | 色爱视频 | 国产免费一区 | 亚洲成人第一区 | 波多野结衣在线播放视频 | 国内偷拍一区二区 | 五月开心激情 | 久久综合一区二区 | 久艹伊人 | 国产高清色 | 性高跟鞋xxxxhd人妖 | 国产一区免费观看 | 懂色av蜜臀av粉嫩av分享 | 日韩一级色 | 99这里有精品视频 | 天天干天天添 | 欧美最猛性xxxx | 一卡二卡三卡四卡五卡 | 日韩午夜激情电影 | 亚洲国产精品久久久久爰色欲 | av网站有哪些 | 国产福利精品视频 | 国内av| 亚洲第一成年人网站 | 厨房性猛交hd | 视频一区二区在线播放 | 亚洲天堂网在线观看 | 日韩福利视频一区 | 国产手机在线观看 |