最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

為什么使用文件

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

什么是文件

磁盤上的文件是文件。
但是在程序設計中,我們一般談的文件有兩種:程序文件、數(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ù)的指針變量??梢允筽f指向某個文件的文件信息區(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 <stdio.h>
int main ()
{
FILE * pFile;
//打開文件
pFile = fopen ("myfile.txt","w");
//文件操作
if (pFile!=NULL)
{
fputs ("fopen example",pFile);
//關(guān)閉文件
fclose (pFile);
}
return 0;
}

文件的順序讀寫

在這里插入圖片描述

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

總結(jié)

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

相關(guān)文章

  • VSCode插件開發(fā)全攻略之打包、發(fā)布、升級的詳細教程

    VSCode插件開發(fā)全攻略之打包、發(fā)布、升級的詳細教程

    這篇文章主要介紹了VSCode插件開發(fā)全攻略之打包、發(fā)布、升級的教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • C++超詳細講解構(gòu)造函數(shù)

    C++超詳細講解構(gòu)造函數(shù)

    C++的構(gòu)造函數(shù)的作?:初始化類對象的數(shù)據(jù)成員。即類的對象被創(chuàng)建的時候,編譯系統(tǒng)對該對象分配內(nèi)存空間,并?動調(diào)?構(gòu)造函數(shù),完成類成員的初始化。構(gòu)造函數(shù)的特點:以類名作為函數(shù)名,?返回類型
    2022-06-06
  • C語言字符串函數(shù)入門

    C語言字符串函數(shù)入門

    這篇文章主要為大家介紹了C語言字符串函數(shù),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • OpenCV實現(xiàn)人臉檢測功能

    OpenCV實現(xiàn)人臉檢測功能

    這篇文章主要為大家詳細介紹了OpenCV實現(xiàn)人臉檢測功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C語言實現(xiàn)哈夫曼編碼

    C語言實現(xiàn)哈夫曼編碼

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)哈夫曼編碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • Qt實現(xiàn)拖拽功能圖文教程(支持拖放文件、拖放操作)

    Qt實現(xiàn)拖拽功能圖文教程(支持拖放文件、拖放操作)

    這篇文章主要給大家介紹了關(guān)于Qt實現(xiàn)拖拽功能(支持拖放文件、拖放操作)的相關(guān)資料,Qt是一款多平臺的C++應用程序開發(fā)框架,它的獨特之處在于可以快速開發(fā)出拖放式的開發(fā)桌面程序,需要的朋友可以參考下
    2023-11-11
  • 全面了解#pragma once與 #ifndef的區(qū)別

    全面了解#pragma once與 #ifndef的區(qū)別

    下面小編就為大家?guī)硪黄媪私?pragma once與 #ifndef的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • 詳解編譯器編譯原理

    詳解編譯器編譯原理

    這篇文章主要介紹了詳解編譯器編譯原理的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • C++實現(xiàn)結(jié)束應用進程小工具

    C++實現(xiàn)結(jié)束應用進程小工具

    這篇文章主要為大家詳細介紹了C++實現(xiàn)結(jié)束應用進程小工具,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • Qt5中QML自定義環(huán)形菜單/環(huán)形選擇框的實現(xiàn)

    Qt5中QML自定義環(huán)形菜單/環(huán)形選擇框的實現(xiàn)

    本文主要介紹了Qt5中QML自定義環(huán)形菜單/環(huán)形選擇框的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評論

江山市| 老河口市| 阿拉善左旗| 尉氏县| 武邑县| 车致| 营山县| 永安市| 永兴县| 江安县| 泸溪县| 海阳市| 祁门县| 南康市| 老河口市| 德令哈市| 广水市| 裕民县| 吉安县| 青海省| 搜索| 金溪县| 东平县| 齐齐哈尔市| 晋宁县| 正安县| 新竹县| 靖远县| 东乡县| 民勤县| 华容县| 扎赉特旗| 中山市| 通河县| 衡水市| 牙克石市| 英超| 德州市| 甘肃省| 敦化市| 加查县|