6.對齊方式的控制初始狀態(tài)為右對齊,可以改變這一設(shè)置,使得輸出采用左對齊方式或內(nèi)部對齊方式。設(shè)置的對齊方式一直有效,直到再次設(shè)置對齊方式時(shí)為止。只有在設(shè)置了寬度的情況下,對齊操作才有意義。有關(guān)操作符有:●left:在設(shè)定的寬度內(nèi)左對齊輸出,右端填以設(shè)定的填充字符;等價(jià)函數(shù)調(diào)用:o.setf(ios_base::left,ios_base::adjustfield) ●right:(此為默認(rèn)設(shè)置)在設(shè)定的寬度內(nèi)右對齊輸出;等價(jià)函數(shù)調(diào)用:o.setf(ios_base::right,ios_base::adjustfield)●internal:在設(shè)定的寬度內(nèi)右對齊輸出;但若有符號(-或+),符號置于最左端;等價(jià)函數(shù)調(diào)用:o.setf(ios_base::internal,ios_base::adjustfield)
7.小數(shù)點(diǎn)處理方式的控制此設(shè)置只影響采用浮點(diǎn)格式輸出的浮點(diǎn)數(shù)據(jù)。在初始狀態(tài)下,若一浮點(diǎn)數(shù)的小數(shù)部分為0,則不輸出小數(shù)點(diǎn)及小數(shù)點(diǎn)后的無效0;可以改變這一設(shè)置,使得在任何情況下都輸出小數(shù)點(diǎn)及其后的無效0。設(shè)置的小數(shù)點(diǎn)處理方式一直有效,直到再次設(shè)置小數(shù)點(diǎn)處理方式時(shí)為止。有關(guān)操作符有:●showpoint:即使小數(shù)部分為0,也輸出小數(shù)點(diǎn)及其后的無效0;等價(jià)函數(shù)調(diào)用:o.setf (ios_base ::showpoint)●noshowpoint:(此為默認(rèn)設(shè)置)取消上述設(shè)置:小數(shù)部分為0時(shí)不輸出小數(shù)點(diǎn);等價(jià)函數(shù)調(diào)用:o.unsetf(ios_base::showpoint)
8.填充字符的控制在輸出數(shù)據(jù)時(shí),如果數(shù)據(jù)寬度小于設(shè)置的寬度,則空閑位置要用填充字符填滿。初始填充字符為空格,可以將別的字符設(shè)置為填充字符。設(shè)置的填充字符一直有效,直到再次設(shè)置填充字符時(shí)為止。只有在設(shè)置了寬度的情況下,字符填充操作才有意義。填充字符的設(shè)置與格式標(biāo)志無關(guān)。有關(guān)操作符是:●setfill(char c):設(shè)置填充字符;等價(jià)函數(shù)調(diào)用:io.fill(c)函數(shù)返回此前設(shè)置的填充字符;如果只需要這個(gè)返回值,可不給參數(shù)。
9.插入換行符●end1:插入換行符(即'\ n')并強(qiáng)制寫緩,實(shí)現(xiàn)輸出的回車換行(與格式標(biāo)志無關(guān));等價(jià)函數(shù)調(diào)用:o.put(o.widen('\n'));o.flush()
10.其他格式控制方式(1)插入字符串結(jié)束符。(2)輸入輸出數(shù)制狀態(tài)的控制。(3)邏輯常量輸出方式的控制。(4)前導(dǎo)空白字符處理方式的控制。(5)緩沖區(qū)工作方式的控制。(6)正數(shù)的符號表示方式的控制。
【考點(diǎn)三】 文件流文件流以磁盤文件以及其他可按文件方式進(jìn)行管理的外部設(shè)備為輸入輸出對象。
ifstream是文件輸入流類,ofstream是文件輸出流類,fstream是文件輸入輸出流類。要利用這些類來定義文件流對象,必須在程序的開始部分包含如下的預(yù)處理命令和名字空間聲明:#includeusing namespace std;
1.文件流的建立每個(gè)文件流都應(yīng)當(dāng)與一個(gè)打開的文件相聯(lián)系?梢杂脙煞N不同的方式打開文件。(1)在建立文件流對象的同時(shí)打開文件。(2)先建立文件流對象,再在適當(dāng)?shù)臅r(shí)候打開文件。
2.文件流的關(guān)閉關(guān)閉文件流用成員函數(shù)close(),例如若fin是一個(gè)文件流對象,則可用下面的語句關(guān)閉:fin.close ();如果程序沒有用close()主動(dòng)關(guān)閉文件,則在文件流對象退出其作用域時(shí),被自動(dòng)調(diào)用的析構(gòu)函數(shù)會(huì)關(guān)閉該對象所聯(lián)系的文件。但我們提倡在打開的文件不再需要時(shí)及時(shí)并主動(dòng)地將之關(guān)閉,以便盡早釋放所占用的系統(tǒng)資源并盡早將文件置于更安全的狀態(tài)。
3.文件流狀態(tài)的判別可以用文件流對象的下列成員函數(shù)來判別文件流的當(dāng)前狀態(tài):is_open():判定流對象是否與一個(gè)打開的文件相聯(lián)系,若是,返回true,否則返回false;good():剛進(jìn)行的操作成功時(shí)返回true,否則返回false;fail():與good()相反,剛進(jìn)行的操作失敗時(shí)返回true,否則返回false;bad():如果進(jìn)行了非法操作返回true,否則返回false;eof():進(jìn)行輸入操作時(shí),若到達(dá)文件尾返回true,否則返回false.也可以直接針對流對象進(jìn)行判斷。假定input是一流對象,則if (! input)…等同于if(input.fail())…if (input)…等同于if(input.good())…
希望與更多計(jì)算機(jī)等級考試的網(wǎng)友交流,請進(jìn)入計(jì)算機(jī)等級考試論壇
更多信息請?jiān)L問:考試吧計(jì)算機(jī)等級考試欄目
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |