freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計(jì)算機(jī)軟件及應(yīng)用]c第七章c輸入輸出流-資料下載頁

2024-10-19 04:03本頁面
  

【正文】 return 1。 } 文件讀寫方法 為了加快讀寫效率,也可改用 getline char str[ 300 ]。 while ( ( str, 300 ) ) ofile str 39。\n39。 可一次復(fù)制 300個(gè)字符 前一頁 下一頁 休息 55 167。 文件的讀寫 ?二進(jìn)制文件讀寫效率較高,多用于兩個(gè)程序間傳遞數(shù)據(jù) ?二進(jìn)制文件打開用組合方式,在一般方式后加:“ | ios :: binary ” ?二進(jìn)制文件讀寫使用流成員函數(shù): ? write( const char* , int )-輸出數(shù)據(jù) 二進(jìn)制文件讀寫 輸出數(shù)據(jù)塊地址 數(shù)據(jù)塊字節(jié)數(shù) ? read ( const char*, int ) -輸入數(shù)據(jù) ?例:編寫一個(gè)程序?qū)⑽谋疚募?二進(jìn)制文件 。 ( ) include include int main( ) { ifstream ifile( ,ios::in | ios::binary )。 if ( !ifile ) { cout endl。 return 0。 } ofstream ofile( ,ios::out | ios::binary )。 if ( !ofile ) { cout endl。 return 0。 } char str[ 900 ]。 ( str, 900 )。 ( str, 900 )。 ( )。 ( )。 return 1。 } ?說明: ?二進(jìn)制文件可以一次讀寫字節(jié)數(shù)很大數(shù)據(jù)塊,減少文件讀寫次數(shù)以提高速度 ?可以測(cè)試實(shí)際文件大小 前一頁 下一頁 休息 58 167。 文件的讀寫 ?二進(jìn)制文件讀寫輔助函數(shù): ? int ios::eof ( ) -測(cè)試文件是否結(jié)束 返回值:文件結(jié)束返回非零值,否則返回 0 ? int ios::gcount( ) -取實(shí)際讀入字節(jié)數(shù) 二進(jìn)制文件讀寫 char str[ 300 ]。 // int n。 while ( !( ) ) { ( str, 300 )。 n = ( )。 ( str, n )。 } 前一頁 下一頁 休息 59 167。 文件的讀寫 ? 每個(gè)文件都能有兩個(gè)文件指針: ? 讀指針:記錄當(dāng)前輸入操作位置 ? 寫指針:記錄下一次寫操作位置 ? 一般文件為順序讀寫文件 ? 可以用成員函數(shù)移動(dòng)文件指針實(shí)現(xiàn)隨機(jī)讀寫 ?隨機(jī)訪問函數(shù)有:控制寫指針的 seekp, tellp 和 讀指針的 seekg、 tellg 文件的隨機(jī)讀寫 前一頁 下一頁 休息 60 167。 文件的讀寫 ?seekp-輸出文件指針移至指定位置函數(shù) ? 函數(shù)原型: ostream amp。 ostream :: seekp( 流中的位置 ) ostream amp。 ostream :: seekp( 偏移量,參照位置 ) ?說明: ?偏移量和流中位置均為字節(jié)數(shù) 例: file . seekp ( 30 ) 文件指針移至離開頭 30字節(jié)處 ?參照位置有三種取值: beg = 0 文件開始位置 cur = 1 當(dāng)前指針位置 end = 2 文件結(jié)尾處 例: file . seekp ( 30, end ) 指針從結(jié)尾前移 30字節(jié) file . seekp ( 4, cur ) 指針從當(dāng)前位置前移 4字節(jié) 輸出流隨機(jī)訪問函數(shù) 前一頁 下一頁 休息 61 167。 文件的讀寫 ? tellp-返回輸出文件當(dāng)前指針位置 ? 函數(shù)原型 ?streampos ostream :: tellp( )。 ?說明: ?streampos 由系統(tǒng)定義為 long 型,是字節(jié)數(shù) 輸出流隨機(jī)訪問函數(shù) 前一頁 下一頁 休息 62 167。 文件的讀寫 ?輸入流隨機(jī)訪問函數(shù) seekg 和 tellg: ? ostream amp。 ostream :: seekg( 流中的位置 ) ? ostream amp。 ostream :: seekg( 偏移量,參照位置 ) ? streampos ostream :: tellg( )。 ?說明: ?參數(shù)意義與輸出流相同 輸入流隨機(jī)訪問函數(shù) 前一頁 下一頁 休息 63 167。 文件的讀寫 ?例:編寫一個(gè)程序?qū)⒉糠殖鞘忻Q和長(zhǎng)途區(qū)號(hào)存入二進(jìn)制文件 中 ,并實(shí)現(xiàn)按區(qū)號(hào)查城市。 ( ) 隨機(jī)訪問實(shí)例 class City { char ame[10]。 //數(shù)據(jù)成員,城市名 char tno[4]。 數(shù)據(jù)成員,區(qū)號(hào) public: City( ) { } //默認(rèn)構(gòu)造函數(shù) City( char m[ ], char n[ ] ) //帶參構(gòu)造函數(shù) { strcpy( ame, m )。 strcpy( tno, n )。 } void disp( ) //輸出函數(shù) { cout 城市: ame 區(qū)號(hào) : tno endl。 } int find( char n[ ] ) //查找區(qū)號(hào)所屬城市函數(shù) { if ( strcmp( tno, n ) == 0 ) return 1。 else return 0。 } }。 define M 6 void main( ) { fstream file。 char no[M]。 City search, city[M] = { City( 北京 , 010 ), City( 上海 , 021 ), City( 天津 , 022 ), City( 重慶 , 023 ), City( 武漢 , 027 ) }。 ( City. txt,ios::trunc|ios::in|ios::binary )。 for ( int i = 0。 i M。 i++ ) ( (char *) amp。city[i], sizeof( City ) )。 對(duì)象數(shù)組逐元素調(diào)用帶參構(gòu)造函數(shù) ( 0, ios::beg )。 //文件定位回到開頭 cout 輸入?yún)^(qū)號(hào): 。 cin no。 for ( i = 0 。 i M。 i++ ) { ( (char *)amp。search, sizeof( City ) )。 if ( ( no ) ) { ( )。 break。 } } if ( i == M ) cout 輸入的區(qū)號(hào)未找到! endl。 ( )。 }
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1