C語言檔案操作總結

2021-08-30 04:44:55 字數 936 閱讀 9466

文字模式

二進位制模式

c可以認識ctrl+z為檔案結尾

c只會把ctrl+z當做檔案中的乙個字元,真正的檔案結尾在後面

ms-dos用\r\n組合表示換行符,c將\r\n看作\n程式將看到這兩個字元

此外,檔案的第乙個字元可能不是檔案的第乙個字元,所以用文字檔案開啟,ftell()可以返回正確的檔案當前位置。而使用二進位制方式開啟,則可能得不到正確的結果。

如果將整數12345使用文字io函式fprintf(fp, "%d", num)輸入到檔案指標fp所指向的檔案中,實質上是將字元1,2,3,4,5輸入到了檔案中。佔了5個位元組。

而使用二進位制io函式fwrite(&num, siezof(num), 1, fp)輸入到檔案指標fp所指向的檔案中,則是將12345的二進位制形式輸入到了文字中,佔乙個int大小的位元組。

文字模式的io函式可以用在二進位制檢視下開啟的檔案(rbwb等),二進位制模式的io函式也可以用在文字檢視下開啟的檔案(rw等)。但一般情況下還是在文字檢視下使用文字io,二進位制模式下使用二進位制io。

大概是因為文字模式的目的是使得人類能夠直接閱讀檔案中的內容,要支援一種編碼(ascii、utf8)。而二進位制是方便計算機讀取資料,同時使檔案更小。

c prim plus 第五版

c語言文字方式和二進位制方式開啟檔案區別

C語言檔案操作總結

幾乎每乙個專案都有乙個日誌記錄功能,用於記錄軟體執行的情況方便日後的審計與審查。而日誌記錄就涉及到了檔案的讀寫操作。因此,本文對c語言下的檔案操作進行了總結。fopen用來開啟檔案。file fopen const char name,const char mode name 是要開啟檔案的檔名指標...

C語言操作檔案總結

include stdio.h include malloc.h include 獲取檔案大小 long getsize char path return 1 fclose fp void readtxt char path 下面兩種方式本質都是分配乙個10位元組的儲存單元,然後宣告乙個字元指標指向...

C語言總結9 C語言檔案操作

磁碟上的檔案是檔案 檔案包含檔案內容和檔案屬性,都是資料,需要儲存 檔案分為程式檔案 源程式檔案 目標檔案 可執行程式檔案 和資料檔案 資料檔案分為文字檔案 以ascii碼的形式儲存 和二進位制檔案 以為二進位制的形式儲存 1 從記憶體向磁碟輸入資料會先送到記憶體中的緩衝區,裝滿緩衝區之後才一起送到...