中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c語言的文件存取方式是什么

發布時間:2020-10-23 17:27:41 來源:億速云 閱讀:312 作者:小新 欄目:編程語言

這篇文章主要介紹c語言的文件存取方式是什么,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

c語言的文件存取方式包括順序存取方式和隨機存取(需要使用fseek等函數幫助)方式兩種。

順序讀取

順序讀取也就是從上往下,一筆一筆讀取文件的內容。保存數據時,將數據附加在文件的末尾。這種存取方式常用于文本文件,而被存取的文件則稱為順序文件。

隨機存取

隨機存取方式多半以二進制文件為主。它會以一個完整的單位來進行數據的讀取和寫入,通常以結構為單位。

打開文件

函數原型為:_CRTIMP FILE * __cdecl fopen(const char *, const char *);

第一參數為文件名,第二個參數為打開模式。

打開成功,fopen返回一個結構指針地址,否則返回一個NULL。如果沒有指定文件路徑,則默認為當前工作目錄。如:

FILE *fp;
fp = fopen("c:\\temp\\test.txt", "r") //由于反斜杠\是控制字符,所以必須再加一個反斜杠

使用fopen()函數打開的文件會先將文件復制到緩沖區。注意:所下達的讀取或寫入動作,都是針對緩沖區進行存取而不是磁盤,只有當使用fclose()函數關閉文件時,緩沖區中的數據才會寫入磁盤。

文件打開模式

"r":只能從文件中讀數據,該文件必須先存在,否則打開失敗
"w":只能向文件寫數據,若指定的文件不存在則創建它,如果存在則先刪除它再重建一個新文件
"a":向文件增加新數據(不刪除原有數據),若文件不存在則打開失敗,打開時位置指針移到文件末尾
"r+":可讀/寫數據,該文件必須先存在,否則打開失敗
"w+":可讀/寫數據,用該模式打開新建一個文件,先向該文件寫數據,然后可讀取該文件中的數據
"a+":可讀/寫數據,原來的文件不被刪去,位置指針移到文件末尾

打開二進制文件的模式與打開文本文件的含義是一樣的,不同的是模式名稱里面多一個字母'b’,以表示以二進制形式打開文件。

關閉文件

函數原型為:_CRTIMP int __cdecl fclose(FILE *);

關閉成功返回值0,否則返回非零值。

注:在執行完文件的操作后,要進行“關閉文件”操作。雖然程序在結束前會自動關閉所有的打開文件,但文件打開過多會導致系統運行緩慢,這時就要自行手動關閉不再使用的文件,來提高系統整體的執行效率。

例1. 打開文件并進行判斷和關閉文件

FILE *fp;
fp = fopen("c:\\temp\\test.txt", "r");
if(fp == NULL)
    printf("fail to open the file! \n");
else
{
    printf("The file is open! \n");
    fclose(fp);
}

以上是c語言的文件存取方式是什么的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

富裕县| 潜山县| 太湖县| 子洲县| 江门市| 威海市| 黄骅市| 三台县| 肥西县| 和田市| 鄯善县| 昌邑市| 浑源县| 蓬安县| 吴忠市| 年辖:市辖区| 榆树市| 秦安县| 奇台县| 汾西县| 胶南市| 新龙县| 光山县| 武冈市| 临朐县| 金华市| 朝阳区| 轮台县| 筠连县| 抚松县| 怀柔区| 成武县| 保定市| 中山市| 交口县| 从化市| 孝义市| 锦屏县| 广平县| 平阳县| 孟津县|