許多程式在實現過程中,依賴將資料儲存到變數中,而變數卻是使用記憶體單元進行儲存,當程式執行完成或終止執行,所有的變數都將消失,不再儲存;另外,如果資料吞吐量過大,變數的使用也將受到限制。
這裡,我們引入『檔案』這個利器,當有大量資料輸出時,可直接將資料儲存進磁碟內,直接儲存;或者有需要大量資料輸入時,也可直接從指定的檔案內讀入而非鍵盤。除此之外,乙個程式的運算結果還可以被另外的程式直接使用,進行進一步加工。
作業系統中,檔案是指駐留在外部介質(如磁碟 等)中的乙個有序資料集,可以是原始檔,目標程式檔案,可執行程式等。
定義檔案型別指標的格式為:file *fp;
開啟檔案(函式):
fopen(「檔名」,「開啟方式」); //該函式有返回值,若其值為null,則表示檔案開啟失敗。
fp=fopen("abc.txt","r");
//或者:
char *p="abc.txt";
fp=fopen(p,"r");
//皆可開啟檔案
/*
r:開啟乙個文字檔案唯讀
w:開啟乙個文字檔案只寫
a:對乙個文字檔案新增
rb:開啟乙個二進位制檔案唯讀
wb:開啟乙個二進位制檔案只寫
ab:對乙個二進位制檔案新增
r+:開啟乙個文字檔案讀/寫
w+:生成乙個文字檔案讀/寫
a+:開啟乙個文字檔案讀/寫
rb+:開啟二進位制檔案讀/寫
wb+:生成二進位制檔案讀/寫
ab+:開啟二進位制檔案讀/寫
*/
如果用寫方式開啟乙個檔案,則原先該檔案的任何內容會被抹掉,並開始乙個新檔案。如果不存在那個名字的檔案,就生成乙個檔案。如果你想往檔案的尾部再加寫乙個內容,就必須使用模式「a」。如果檔案不存在,就返回出錯資訊。在開啟 乙個檔案準備進行讀操作是,該檔案必須存在。如果檔案不存在,返回乙個出錯資訊。最後,開啟乙個讀/寫操作的檔案,如果檔案存在它不會被抹掉;如果檔案不存在就生成乙個檔案。
如下:
file *fp;
//判斷檔案是否能夠正常開啟。
if((fp=fopen("1111.txt","r"))==null)
注意:c語言中允許同時開啟多個檔案,不同檔案採用不同檔案指標指示,但是不允許同乙個檔案在被關閉之前重新開啟。
關閉檔案通過呼叫標準函式實現:
fclose(檔案指標) //該函式返回乙個整數,若返回的數為0,則表示正常關閉檔案;
#includeint main()
//開啟新建txt檔案1111.txt,開啟失敗會有輸出
if((fp=fclose("1111.txt"))!=0)
//關閉檔案1111.txt,關閉失敗也會有輸出
return 0;
}
C語言中檔案的讀取和寫入
c語言中檔案的讀取和寫入 注意 1 由於c是緩衝寫 所以要在關閉或重新整理後才能看到檔案內容 2 電腦處理文字型和二進位制型的不同 因為電腦只認識二進位制格式 在c語言中寫檔案 獲取檔案指標 file pfile fopen 1.txt 開啟檔案的名稱 w 檔案開啟方式 如果原來有內容也會銷毀 向檔...
C語言中檔案的讀取和寫入
在c語言中寫檔案 獲取檔案指標 file pfile fopen 1.txt 開啟檔案的名稱 w 檔案開啟方式 如果原來有內容也會銷毀 向檔案寫資料 fwrite hello 要輸入的文字 1,文字每一項的大小 以為這裡是字元型的 就設定為1 如果是漢字就設定為4 strlog hello 單元個數...
C語言中檔案的讀取和寫入
注意 1 由於c是緩衝寫 所以要在關閉或重新整理後才能看到檔案內容 2 電腦處理文字型和二進位制型的不同 因為電腦只認識二進位制格式 在c語言中寫檔案 獲取檔案指標 file pfile fopen 1.txt 開啟檔案的名稱 w 檔案開啟方式 如果原來有內容也會銷毀 向檔案寫資料 fwrite h...