欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2022年02月21日 16:23:15   作者:獨愛小y  
這篇文章主要為大家詳細介紹了C語言的文件操作,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

為什么使用文件

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

什么是文件

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

程序文件

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

數(shù)據文件

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

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

文件名

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

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

例如: c:\code\test.txt

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

文件的打開和關閉

文件指針

每個被使用的文件都在內存中開辟了一個相應的文件信息區(qū),用來存放文件的相關信息(如文件的名字,文件狀態(tài)及文件當前的位置等)。這些信息是保存在一個結構體變量中的。該結構體類型是有系統(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ù)據的指針變量??梢允筽f指向某個文件的文件信息區(qū)(是一個結構體變量)。通過該文件信息區(qū)中的信息就能夠訪問該文件。也就是說,通過文件指針變量能夠找到與它關聯(lián) 的文件。

比如:

在這里插入圖片描述

在這里插入圖片描述

fopen和fclose函數(shù)

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

使用方式:

在這里插入圖片描述

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

實例:

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

文件的順序讀寫

在這里插入圖片描述

注:使用這些函數(shù)要包含頭文件 <stdio.h>

總結

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!  

相關文章

  • C++簡單實現(xiàn)RPC網絡通訊的示例詳解

    C++簡單實現(xiàn)RPC網絡通訊的示例詳解

    RPC是遠程調用系統(tǒng)簡稱,它允許程序調用運行在另一臺計算機上的過程,就像調用本地的過程一樣。本文將用C++簡單實現(xiàn)RPC網絡通訊,感興趣的可以了解一下
    2023-04-04
  • C++ Opengl圖形顏色功能附源碼下載

    C++ Opengl圖形顏色功能附源碼下載

    這篇文章主要介紹了C++ Opengl圖形顏色功能附源碼下載,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • C語言結構體簡單入門講解

    C語言結構體簡單入門講解

    這篇文章主要介紹了C語言結構體簡單入門講解,本文講述了結構體的基本定義和操作,講解了幾個比較實用的函數(shù)和案例,希望對你有所幫助
    2021-06-06
  • C++實現(xiàn)旋轉數(shù)組的二分查找

    C++實現(xiàn)旋轉數(shù)組的二分查找

    這篇文章主要介紹了C++實現(xiàn)旋轉數(shù)組的二分查找方法,涉及數(shù)組的操作,有值得借鑒的技巧,需要的朋友可以參考下
    2014-09-09
  • SublimeText編譯C開發(fā)環(huán)境設置

    SublimeText編譯C開發(fā)環(huán)境設置

    這篇文章主要介紹了使用SublimeText編譯C代碼的開發(fā)環(huán)境設置,大家參考使用
    2013-11-11
  • C語言實現(xiàn)稀疏矩陣

    C語言實現(xiàn)稀疏矩陣

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)稀疏矩陣的代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • C++關鍵字volatile學習筆記

    C++關鍵字volatile學習筆記

    這篇文章主要為大家介紹了C++關鍵字volatile學習筆記,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • C語言自定義實現(xiàn)strlen函數(shù)的3種方法總結

    C語言自定義實現(xiàn)strlen函數(shù)的3種方法總結

    這篇文章帶大家了解C語言中自定義實現(xiàn)strlen函數(shù)的3種方法,計數(shù)器,遞歸以及指針,這三種方法通過代碼示例介紹的非常詳細,需要的朋友可以參考下
    2023-08-08
  • memset函數(shù)的使用分析

    memset函數(shù)的使用分析

    本篇文章是對memset函數(shù)的使用進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C++如何使用new來初始化指向類的指針

    C++如何使用new來初始化指向類的指針

    這篇文章主要介紹了C++如何使用new來初始化指向類的指針問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07

最新評論