字元讀寫函式 :fgetc和fputc
字串讀寫函式:fgets和fputs
資料塊讀寫函式:freed和fwrite
格式化讀寫函式:fscanf和fprinf
1.字元讀寫:
fgetc函式的功能是從指定的檔案中讀乙個字元,函式呼叫的形式為:
字元變數=fgetc(檔案指標);
fputc函式的功能是把乙個字元寫入指定的檔案中,函式呼叫的形式為:
fputc(字元量,檔案指標);
2.字串讀寫
讀字串函式fgets
函式的功能是從指定的檔案中讀乙個字串到字元陣列中,函式呼叫的形式為:
fgets(字元陣列名,n,檔案指標);
寫字串函式fputs
fputs函式的功能是向指定的檔案寫入乙個字串,其呼叫形式為:
fputs(字串,檔案指標);
3.資料塊讀寫
讀資料塊函式呼叫的一般形式為:
fread(buffer,size,count,fp);
寫資料塊函式呼叫的一般形式為:
fwrite(buffer,size,count,fp);
4.格式化讀寫
fscanf函式,fprintf函式與前面使用的scanf和printf 函式的功能相似,都是格式化讀寫函式。兩者的區別在於fscanf函式和fprintf函式的讀寫物件不是鍵盤和顯示器,而是磁碟檔案。
這兩個函式的呼叫格式為:
fscanf(檔案指標,格式字串,輸入表列);
fprintf(檔案指標,格式字串,輸出表列);
檔案定位
移動檔案內部位置指標的函式主要有兩個,即 rewind 函式和fseek函式。
rewind函式前面已多次使用過,其呼叫形式為:
rewind(檔案指標);
它的功能是把檔案內部的位置指標移到檔案首。
下面主要介紹fseek函式。fseek函式用來移動檔案內部位置指標,其呼叫形式為:
fseek(檔案指標,位移量,起始點);
其中:
「檔案指標」指向被移動的檔案。
「位移量」表示移動的位元組數,要求位移量是long型資料,以便在檔案長度大於64kb 時不會出錯。當用常量表示位移量時,要求加字尾「l」。
「起始點」表示從何處開始計算位移量,規定的起始點有三種:檔案首,當前位置和檔案尾。
其表示方法如下表。
起始點表示符號
數字表示
檔案首seek_set
0當前位置
seek_cur
1檔案末尾
seek_end
2
例如:
fseek(fp,100l,0);
其意義是把位置指標移到離檔案首100個位元組處。
還要說明的是fseek函式一般用於二進位制檔案。在文字檔案中由於要進行轉換,故往往計算的位置會出現錯誤。
c語言中常用的檔案檢測函式有以下幾個。
呼叫格式:
feof(檔案指標);
功能:判斷檔案是否處於檔案結束位置,如檔案結束,則返回值為1,否則為0。
讀寫檔案出錯檢測函式
ferror函式呼叫格式:
ferror(檔案指標);
功能:檢查檔案在用各種輸入輸出函式進行讀寫時是否出錯。如ferror返回值為0表示未出錯,否則表示有錯。
clearerr函式呼叫格式:
clearerr(檔案指標);
功能:本函式用於清除出錯標誌和檔案結束標誌,使它們為0值。
C語言 對於迴圈的初步認識
對於初學者來說,迴圈語句僅僅包含三個 for語句,while語句,do while語句。1.for語句 for 表示式 1 表示式 2 表示式 3 表示式 1 初始化表示式,最早被執行,僅僅執行一次。表示式 2 判斷表示式,為真執行,為假跳出。進入迴圈時,每次都會執行。表示式 3 步進表示式,執行完...
C語言對線性表的基本操作
created by luol on 2020 8 1.include typedef int elemtype define list size 1024 typedef struct sequenlist sequenlist l sequenlist p l param p 順序表位置 par...
c語言對檔案的操作
檔案使用方式 含義 r 唯讀 開啟乙個文字檔案,只允許讀資料 w 只寫 開啟或建立乙個文字檔案,只允許寫資料 a 追加 開啟乙個文字檔案,並在檔案末尾寫資料 rb 唯讀 開啟乙個二進位制檔案,只允許讀資料 wb 只寫 開啟或建立乙個二進位制檔案,只允許寫資料 ab 追加 開啟乙個二進位制檔案,並在檔...