• 【C语言】文件操作(上)


    一.什么是文件

    文件是磁盘上的文件,文件中存放的数据不随程序的退出而销毁.


    二.文件的打开与关闭

    1.文件指针

    每个被使用的文件都在内存中开辟了一个相应的文件信息区,用来存放文件的相关信息(如文件的名字,文件状态及文件当前的位置等)。这些信息是保存在一个结构体变量中的。该结构体类型是有系统声明的,取名FILE.

    下面演示用C语言创建一个文件指针变量:

    1. FILE* pf;
    2. //pf即为文件指针变量

    定义pf是一个指向FILE类型数据的指针变量。可以使pf指向某个文件的文件信息区(是一个结构体变量)。通过该文件信息区中的信息就能够访问该文件。

    也就是说,通过文件指针变量能够找到与它关联的文件.


    2.文件的打开

    文件在读写之前应该先打开文件.

    ANSIC规定使用fopen()函数来打开文件:

    1. FILE * fopen ( const char * filename, const char * mode );
    2. //fopen()函数的函数定义

    我们用c语言演示一下用fopen()函数以读的方式打开一个名为"test.txt"的文件:

    FILE*pf=fopen("test.txt","r");

     下面我们需要判断文件是否打开成功,如果打开失败,则不能再进行后续操作,而需要及时检查错误.

    演示一下判断文件是否成功,如果失败,则用perror()函数输出错误信息后终止程序:

    1. if (pf == NULL)
    2. {
    3. perror("fopen");
    4. return 1;
    5. }

    如果成功,则继续运行后续操作.

    3.文件的关闭

    文件在使用结束后应该关闭文件.

    ANSIC规定使用fclose()函数来关闭文件:

    1. int fclose ( FILE * stream );
    2. //fclose()函数的函数定义

    如果成功关闭文件,fclose( ) 函数返回零,如果关闭文件时发生错误,函数返回 EOF。这个函数实际上,会清空缓冲区中的数据,关闭文件,并释放用于该文件的所有内存。EOF 是一个定义在头文件 stdio.h 中的常量。

    C 标准库提供了各种函数来按字符或者以固定长度字符串的形式读写文件。

    下面演示一下使用fclose()函数关闭文件:

    fclose(pf);

    在使用fclose()函数关闭文件后,要记得将pf指针置为空指针,否则后续继续使用pf指针就会造成非法访问 .

    下面的操作就是将pf置为空指针:

    pf=NULL:

    三.文件的顺序读写

    文件读写相关函数

    功能   

    函数名适用于
    字符输入函数fgetc所有输入流
    字符输出函数fputc所有输出流
    文本行输入函数fgets所有输入流
    文本行输出函数fputs所有输出流
    格式化输入函数fscanf所有输入流
    格式化输出函数fprintf所有输出流
    二进制输入fread文件
    二进制输出fwrite文件

     

  • 相关阅读:
    企业如何有效制定企业信息化发展规划?(附信息化模板)
    【观察者模式】
    计算机网络之传输层
    Android(kotlin)JetPack系列学习——2.ViewModel(含源码)
    RFSoC Debug:Petalinux 不显示 flash选项
    [附源码]SSM计算机毕业设计小超市进销存管理系统JAVA
    IBM MQ 连接属性-示例
    form表单以及CSS
    day43:C++ day3 类、结构体与类的区别、this指针、类中特殊成员函数
    MQ - 01 消息队列发展史&MQ通用架构
  • 原文地址:https://blog.csdn.net/weixin_72357342/article/details/132700369