C++基础:文件操作函数fopen()和fclose()

1.fopen()

fopen函数用于打开一个文件,并返回一个文件指针,该指针可以用于后续的文件操作。其定义如下:

FILE *fopen(const char *filename, const char *mode);

其中,filename为要打开的文件的名称,可使用绝对地址或相对地址表示;mode为文件打开模式,主要包括:
  r:以只读方式打开文件。文件必须存在;

  w:以只写方式打开文件。如果文件不存在,则创建一个新文件;如果文件存在,则删除其内容;

  a:以追加模式打开文件。如果文件不存在,则创建一个新文件;如果文件存在,则在文件末尾添加内容;

  r+:以读写方式打开文件。文件必须存在;

  w+:以读写方式打开文件。如果文件不存在,则创建一个新文件;如果文件存在,则删除其内容;

  a+:以读写方式打开文件。如果文件不存在,则创建一个新文件;如果文件存在,则在文件末尾添加内容。

若函数执行成功,则返回一个指向该文件的指针;若执行失败,则返回NULL。

2.fclose()

fclose函数用于关闭已打开文件.其定义如下:

int fclose(FILE *stream);

其中,stream为要关闭的文件的指针,该指针是由fopen函数返回的。

若函数执行成功,则返回0;若失败,则返回EOF。

3.举例

写一个 用于打开一个文件并读取其内容的代码:

#include <stdio.h>  // 引入标准输入输出库,用于文件操作和打印输出  
  
int main(){  // 主函数入口  
    FILE * file_ = fopen("/home/zhouweiqing/14/src/aa.txt","r");  // 使用fopen函数打开文件,文件路径为"/home/zhouweiqing/14/src/aa.txt",模式为只读("r")  
  
    if(file_ == NULL) {  // 如果文件打开失败,file_指针将为NULL  
        perror("打开失败");  // 打印错误信息,提示"打开失败"  
    }  
  
    char buffer[1024];  // 定义一个字符数组,用于存储从文件中读取的内容,最大长度为1024  
    while (fgets(buffer, sizeof(buffer), file_)) {  // 使用fgets函数从文件中读取内容,每次最多读取sizeof(buffer)个字符,直到文件结束或读取到换行符、EOF等  
        printf("%s", buffer);  // 打印从文件中读取的内容  
    }    
  
    fclose(file_);  // 使用fclose函数关闭已打开的文件  
}

运行得到结果:

可以看到成功读取到hello!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值