C++程序設(shè)計(jì) 教學(xué)課件 作者 王春玲 第10章.ppt

C++程序設(shè)計(jì) 教學(xué)課件 作者 王春玲 第10章.ppt

ID:50350151

大?。?76.00 KB

頁(yè)數(shù):23頁(yè)

時(shí)間:2020-03-08

C++程序設(shè)計(jì) 教學(xué)課件 作者 王春玲 第10章.ppt_第1頁(yè)
C++程序設(shè)計(jì) 教學(xué)課件 作者 王春玲 第10章.ppt_第2頁(yè)
C++程序設(shè)計(jì) 教學(xué)課件 作者 王春玲 第10章.ppt_第3頁(yè)
C++程序設(shè)計(jì) 教學(xué)課件 作者 王春玲 第10章.ppt_第4頁(yè)
C++程序設(shè)計(jì) 教學(xué)課件 作者 王春玲 第10章.ppt_第5頁(yè)
資源描述:

《C++程序設(shè)計(jì) 教學(xué)課件 作者 王春玲 第10章.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、第10章文件本章主要內(nèi)容在程序設(shè)計(jì)中,數(shù)據(jù)輸入/輸出(I/O)操作是必不可少的,C++的數(shù)據(jù)輸入/輸出操作是通過(guò)I/O流庫(kù)來(lái)實(shí)現(xiàn)的。C++中把數(shù)據(jù)之間的傳輸操作稱(chēng)為流(stream),即數(shù)據(jù)像流水一樣從一處流向另一處。流既可以表示數(shù)據(jù)從內(nèi)存?zhèn)魉偷侥硞€(gè)載體或設(shè)備中,即輸出流,也可以表示數(shù)據(jù)從某個(gè)載體或設(shè)備傳送到內(nèi)存緩沖區(qū)變量中,即輸入流。本章主要介紹:1.C++流的概念。2.?dāng)?shù)據(jù)輸出的格式控制。3.文件的I/O操作。10-1C++流的概念在C++中,輸入輸出流被定義為類(lèi),稱(chēng)為流類(lèi);用流類(lèi)定義的對(duì)象稱(chēng)為流對(duì)象,如,cin和cout并不是C++所提供的輸入輸出語(yǔ)

2、句,而是iostream類(lèi)的對(duì)象。標(biāo)準(zhǔn)輸出輸入流對(duì)象(cout、cin)在使用過(guò)程中,只要在程序的開(kāi)頭嵌入相應(yīng)的頭文件iostream.h即可。在C++中,基本的I/O流類(lèi)庫(kù)如圖10-1所示。文件流類(lèi)庫(kù)如圖10-2所示。10-2數(shù)據(jù)輸出的格式控制在使用流控制符時(shí),要在程序的開(kāi)頭嵌入頭文件iomanip.h??刂品δ蹹ec十進(jìn)制數(shù)輸出Hex十六進(jìn)制數(shù)輸出Oct八進(jìn)制數(shù)輸出setfill(c)在給定的輸出域?qū)挾葍?nèi)填充字符csetprecision(n)設(shè)顯示小數(shù)精度為n位setw(n)設(shè)域?qū)挒閚個(gè)字符setiosflags(ios::fixed)固定的浮點(diǎn)顯

3、示setiosflags(ios::scientific)指數(shù)顯示setiosflags(ios::left)左對(duì)齊setiosflags(ios::right)右對(duì)齊setiosflags(ios::skipws)忽略前導(dǎo)空白setiosflags(ios::uppercase)十六進(jìn)制數(shù)大寫(xiě)輸出setiosflags(ios::lowercase)十六進(jìn)制數(shù)小寫(xiě)輸出setiosflags(ios::showbase)當(dāng)按十六進(jìn)制輸出數(shù)據(jù)時(shí),前面顯示前導(dǎo)符0x;當(dāng)按八進(jìn)制輸出數(shù)據(jù)時(shí),前面顯示前導(dǎo)符010-2-1域?qū)捒刂苨etw(n)注意:setw(n)只

4、對(duì)下一個(gè)被輸出的數(shù)據(jù)起作用【例10-1】域?qū)捒刂剖纠?0-2-2填充字符控制setfill(c)【例10-2】修改【例10-1】,增加域內(nèi)填充字符。10-2-3數(shù)制控制在默認(rèn)情況下,被輸出的數(shù)據(jù)是按十進(jìn)制格式輸出的?!纠?0-3】數(shù)制輸出控制示例。10-2-4浮點(diǎn)數(shù)輸出控制setiosflags(ios::fixed)和setiosflags(ios::scientific)【例10-4】輸入圓的半徑,計(jì)算并輸出圓的周長(zhǎng)和面積,要求分別用指數(shù)和小數(shù)兩種格式輸出。10-2-5對(duì)齊方式控制setiosflags(ios::left)和setiosflags(

5、ios::right)【例10-5】修改【例10-2】,增加數(shù)據(jù)的對(duì)齊方式。10-3文件流文件是存儲(chǔ)在磁盤(pán)、磁帶等外部存儲(chǔ)設(shè)備上的數(shù)據(jù)的集合,每一個(gè)文件都必須有一個(gè)惟一的文件名稱(chēng)。在使用文件前必須首先打開(kāi)文件,使用完畢后必須關(guān)閉文件。對(duì)文件的操作是由文件流類(lèi)完成的。文件流類(lèi)在流與文件間建立連接。另外,在C++中,將文件看作是由一個(gè)一個(gè)字符(字節(jié))的數(shù)據(jù)順序組成的。按照文件中數(shù)據(jù)的存放形式可以將文件分為ASCII文件和二進(jìn)制文件。ASCII文件又稱(chēng)文本文件,它的每一個(gè)字節(jié)存放一個(gè)ASCII代碼,代表一個(gè)字符;二進(jìn)制文件是將數(shù)據(jù)用二進(jìn)制形式存放在文件中,并保持

6、了數(shù)據(jù)在內(nèi)存中存放的原有格式。由于文件流分為三種:輸入文件流、輸出文件流、輸入/輸出文件流,所以,相應(yīng)地必須將文件流說(shuō)明為ifstream、ofstream和fstream類(lèi)的對(duì)象,然后利用文件流的對(duì)象對(duì)文件進(jìn)行操作。對(duì)文件的操作過(guò)程可按以下四步進(jìn)行:(1)定義文件流類(lèi)的對(duì)象。(2)利用對(duì)象和相應(yīng)的成員函數(shù)open打開(kāi)要操作的文件,文件打開(kāi)后就使流與文件間建立了連接。(3)利用對(duì)象和相應(yīng)的成員函數(shù)對(duì)文件進(jìn)行讀、寫(xiě)操作。(4)利用對(duì)象和相應(yīng)的成員函數(shù)close關(guān)閉文件。利用文件流類(lèi)可以定義文件對(duì)象,格式如下:文件流類(lèi)對(duì)象名;10-3-1文件的打開(kāi)和關(guān)閉1.打

7、開(kāi)文件打開(kāi)文件應(yīng)使用fstream類(lèi)的成員函數(shù)open,該成員函數(shù)的函數(shù)原型為:voidopen(constunsignedchar*filename,intmode,intaccess=filebuf::openprot);其中:(1)filename是一個(gè)字符型指針,它指定了要打開(kāi)的文件名;(2)mode指定了文件的打開(kāi)方式,其值如表10-3所示;文件打開(kāi)方式含義ios::in以輸入(讀)方式打開(kāi)文件ios::out以輸出(寫(xiě))方式打開(kāi)文件ios::app打開(kāi)一個(gè)文件使新的內(nèi)容始終添加在文件的末尾ios::ate打開(kāi)一個(gè)文件使新的內(nèi)容添加在文件尾,但下

8、一次添加時(shí),寫(xiě)在當(dāng)前位置處ios::trunc若文件存在,則清除文

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。