C C 檔案輸入輸出(詳細介紹)

2021-08-30 06:17:38 字數 3946 閱讀 9994

´在標頭檔案

iostream

中定義有

兩個流類:輸入流類

istream

和輸出流類

ostream

,且用這兩個類定義了流物件

cin和

cout:

´istream

cin; ´

ostream

cout;

´cin

是乙個istream

類的物件,它從標準輸入裝置(鍵盤

)獲取資料,程式中的變數通過流提取符「

>>

」從流中提取資料。流提取符「

>>

」從流中提取資料時通常跳過輸**中的空格、

tab鍵、換行符等空白字元。注意:只有在輸入完資料再按回車鍵後

,該行資料才被送入

鍵盤緩衝區,形成輸入流,提取運算子「

>>

」才能從中提取資料

。注意保證從流中讀取資料

能正常進行。

´cout

是乙個ostream

類的物件,它有乙個成員運算函式

operator<

每次呼叫的時候就會向輸出裝置輸出。

operator

用運算子過載,可以接受不同型別的資料,如整型、浮點型、字串甚至指標,等等

。cout

是標準輸出裝置,一般輸出到

螢幕。

在定義流物件時,系統會在記憶體中開闢一段緩衝區,用來暫存輸入輸出流的資料

c++的

iostream與c

的printf

/scanf

的區別 ´1

. 型別處理更安全、智慧型,

printf

中對付int

、float

等說明符比較麻煩 ´

2. 擴充套件性更

強,iostream

使用的<<

、>>

操作符都是可過載,只要過載相關的運算子就可以;

´3.

流風格的寫法也比較自然簡潔 ´

4. printf

/scanf

的速度比

cin/

cout快

幾個輸入函式介紹: ´

1、cin.get()

´cin.get

(字元變數名

)可以用來接收字元

´cin.get

(字元陣列名

,接收字元數目

)用來接收一行字串

,可以接收空格2、

cin.getline

(接收字串的變數

,接收字元個數

,結束字元)用法

:接收乙個字串,可以接收空格並輸出3

、getline

()用法:接收乙個字串,可以接收空格並輸出,需包含「

#include>」 ´

注意:cin.getline

()屬於

istream

流,而getline

()屬於

string

流,是不一樣的兩個函 檔案

i/o也稱為讀檔案(輸入)和寫檔案(輸出),

c++標準庫中提供兩個類

ifstream

和ofstream

,分別用於檔案的輸入和輸出。 一

.檔案的寫操作:

寫操作對應的有:

<<

、put

、write

等,我們來看下他們分別都能實現什麼樣的寫檔案功能!

①、寫文字型別

/ascii

碼型別的可見字串:

<<

、put

int main()
這就是寫文字檔案的方式,其中

<<

支援的型別比較多,

put

只能寫單個字元到檔案,還是有一定侷限性的,所以

put

平時用的比較少

參考**:http://

重定向 標準輸入輸出的庫函式 ´

所謂重定向輸出,就是可以把原本只是輸出在控制台的字元,輸出到你指定的路徑檔案中。

(輸入類似,就是從指定的檔案中讀取,而不是讀取在控制台中的輸入。

)重定向

函式可以在任何時候開啟、關閉。

´函式名:

freopen ´

標準宣告:

file *

freopen

( const

char *path,

const

char *mode, file *stream );  ´

所在檔案:

<

stdio.h

> 引數

說明: 

path:

檔名,用於儲存輸入輸出的自定義檔名。 

mode:

檔案開啟的模式。和

fopen

中的模式(如r讀

, w寫)相同。 

stream:

乙個檔案,通常使用標準流檔案。 返回值:成功,則返回乙個

path

所指定檔案的指標;失敗,返回

null

。功能:實現重定向,把預定義的標準流檔案定向到由

path

指定的檔案中。標準流檔案具體是指

stdin

、stdout

和stderr

。其中stdin

是標準輸入流,預設為鍵盤;

stdout

是標準輸出流,預設為螢幕;

stderr

是標準錯誤流,一般把螢幕設為預設

輸入乙個正整數n(

n<100,n

從檔案in.txt

讀入),求n

的階乘(答案寫入檔案

out.txt

)。

//c++語法

#include#includeusing namespace std;

int fac(int n)

int main()

int main()

fclose(stdin);//關閉重定向輸入

fclose(stdout);//關閉重定向輸出

return 0;

}

getline()該函式是從檔案中讀取一行資料,一行就是有換行符 \n,或者達到 getline 的緩衝區大小,或者讀到檔案末尾。

#include using namespace std;

int main(int argc, char* argv);//快取區

fs_in.getline(sz, 100);

fs_in.getline(sz, 100);

fs_in.getline(sz, 100);

fs_in.close();

return 0;

}

//②、二進位制型別寫檔案:write

int main()

//①、讀文字型別/ascii碼型別的檔案:>>、get、getline

int main()

閒魚演算法書pdf:有需要的同學可以看看:

C C 檔案的輸入輸出

file 是一種檔案型別,也稱檔案指標 注意 以下程式均為在vs2013中的用法,針對其他編譯器,寫法略有不同,但對檔案的用法都一樣!定義 file fp fgetc fp 從fp所指的檔案讀乙個字元 fputc ch,fp 將ch字元寫到檔案指標變數fp所指的檔案中 fopen s fp,yy.t...

C C 輸入 輸出

在c語言中,我們的輸入輸出靠的是標準庫函式,最常用的就是 scanf 和 printf 這一對了。那麼c 又是怎麼樣實現輸入輸出的呢?下面來寫c 的第乙個程式!include using namespace std int main 不難看出,它有以下特徵 1.使用cout標準輸出 控制台 和cin...

C C 輸入輸出

符號 描述 h0 short型的八進位制 0int型的八進位制 l0long型的八進位制 hdshort型的十進位制 dint型的十進位制 ldlong型的十進位制 hx,hx short型的十六進製制,x表示小寫,x表示大寫 x,x int型的十六進製制,x表示小寫,x表示大寫 lx,lx lon...