日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網(wǎng)站首頁 編程語言 正文

一篇文章帶你了解C語言的文件操作_C 語言

作者:獨愛小y ? 更新時間: 2022-04-25 編程語言

為什么使用文件

我們在想既然是通訊錄就應該把信息記錄下來,只有我們自己選擇刪除數(shù)據(jù)的時候,數(shù)據(jù)才不復存在。這就涉及到了數(shù)據(jù)持久化的問題,我們一般數(shù)據(jù)持久化的方法有,把數(shù)據(jù)存放在磁盤文件、存放到數(shù)據(jù)庫等方式。使用文件我們可以將數(shù)據(jù)直接存放在電腦的硬盤上,做到了數(shù)據(jù)的持久化。

什么是文件

磁盤上的文件是文件。
但是在程序設(shè)計中,我們一般談的文件有兩種:程序文件、數(shù)據(jù)文件(從文件功能的角度來分類的)。

程序文件

包括源程序文件(后綴為.c),目標文件(windows環(huán)境后綴為.obj),可執(zhí)行程序(windows環(huán)境后綴為.exe)。

數(shù)據(jù)文件

文件的內(nèi)容不一定是程序,而是程序運行時讀寫的數(shù)據(jù),比如程序運行需要從中讀取數(shù)據(jù)的文件,或者輸出內(nèi)容的文件。

本章討論的是數(shù)據(jù)文件。

文件名

一個文件要有一個唯一的文件標識,以便用戶識別和引用。

文件名包含3部分:文件路徑+文件名主干+文件后綴

例如: c:\code\test.txt

為了方便起見,文件標識常被稱為文件名

文件的打開和關(guān)閉

文件指針

每個被使用的文件都在內(nèi)存中開辟了一個相應的文件信息區(qū),用來存放文件的相關(guān)信息(如文件的名字,文件狀態(tài)及文件當前的位置等)。這些信息是保存在一個結(jié)構(gòu)體變量中的。該結(jié)構(gòu)體類型是有系統(tǒng)聲明的,取名FILE

例如,VS2013編譯環(huán)境提供的 stdio.h 頭文件中有以下的文件類型申明:

struct _iobuf {
char *_ptr;
int _cnt;
char *_base;
int _flag;
int _file;
int _charbuf;
int _bufsiz;
char *_tmpfname;
};
typedef struct _iobuf FILE;

下面我們可以創(chuàng)建一個FILE*的指針變量:

 FILE* pf;//文件指針變量

定義pf是一個指向FILE類型數(shù)據(jù)的指針變量。可以使pf指向某個文件的文件信息區(qū)(是一個結(jié)構(gòu)體變量)。通過該文件信息區(qū)中的信息就能夠訪問該文件。也就是說,通過文件指針變量能夠找到與它關(guān)聯(lián) 的文件。

比如:

在這里插入圖片描述

在這里插入圖片描述

fopen和fclose函數(shù)

//打開文件
FILE * fopen ( const char * filename, const char * mode );
//關(guān)閉文件
int fclose ( FILE * stream );

使用方式:

在這里插入圖片描述

一般來說,學會熟練操作前三個就行了

實例:

/* fopen fclose example */
#include 
int main ()
{
FILE * pFile;
//打開文件
pFile = fopen ("myfile.txt","w");
//文件操作
if (pFile!=NULL)
{
fputs ("fopen example",pFile);
//關(guān)閉文件
fclose (pFile);
}
return 0;
}

文件的順序讀寫

在這里插入圖片描述

注:使用這些函數(shù)要包含頭文件

總結(jié)

原文鏈接:https://blog.csdn.net/m0_61719175/article/details/123019686

欄目分類
最近更新