【C标准库】详解fopen函数 一篇让你搞懂fopen函数
创作不易,感谢支持!‾\underline{创作不易,感谢支持! }创作不易,感谢支持!
fopen函数
头文件:stdio.h
功能是打开一个文件,其声明格式是:
FILE *fopen(const char *filename, const char *mode);
文件指针名 = fopen(文件名,使用文件方式)
- “文件名”是被打开文件的文件名,类型是C风格字符串。
- “使用文件方式”是指文件的类型和操作要求。
参数:
filename : 字符串,表示要打开的文件名称。
mode : 字符串,表示文件的访问模式,可以是以下表格中的值。
返回值:
该函数返回一个 FILE 指针(文件指针)。如果打开失败则返回 NULL。
打开方式如下:
- 注意:这里的输入意思是从文件获取信息;输出是向文件输出信息
文件使用方式 | 含义 | 如果指定文件不存在 |
---|---|---|
“r”(只读) | 为了输入数据,打开一个已经存在的文本文件(从文件获取) | 出错 |
“w”(只写) | 为了输出数据,打开一个文本文件(向文件输出) | 建立一个新的文件 |
“a”(追加) | 向文本文件尾添加数据 | 出错 |
“rb”(只读) | 为了输入数据,打开一个二进制文件 | 出错 |
“wb”(只写) | 为了输出文件,打开一个二进制文件 | 建立一个新的文件 |
“ab”(追加) | 向一个二进制文件尾添加数据 | 出错 |
“r+”(读写) | 为了读和写,打开一个文本文件 | 出错 |
“w+”(读写) | 为了读和写,创建一个新的文本文件 | 建立一个新的文件 |
“a+”(读写) | 打开一个文件,在文件末尾读进行读写 | 建立一个新的文件 |
“rb+”(读写) | 为了读和写打开一个二进制文件 | 出错 |
“wb+”(读写) | 为了读和写,新建一个二进制文本文件 | 建立一个新的文件 |
“ab+”(读写) | 打开一个二进制文件,在文件末尾进行读和写 | 建立一个新的文件 |
注意:如果使用任何一种 ”w" 模式打开一个现有文件,该文件的内容会被删除,以便程序在一个空白文件中开始操作
操作实例:
- 此时我的项目路径下没有file.txt文件,因为打开方式是w,所以它会自动创建一个。
#include <stdio.h>
#include <stdlib.h>int main()
{FILE* fp = fopen ("file.txt", "w");fclose(fp);//关闭文件fp = NULL;return 0;
}
以上代码均在vs2022环境下编译
【C标准库】详解fopen函数 一篇让你搞懂fopen函数相关推荐
- Android 动态分区详解(一) 5 张图让你搞懂动态分区原理
文章目录 0. 导读 1. 动态分区详解的背景 1.1 背景 1.2 动态分区的本质 2. Linux device mapper 驱动 3. Android 动态分区布局 3.1 动态分区布局 3. ...
- 【python】标准库详解
注:最后有面试挑战,看看自己掌握了吗 文章目录 Standard Library简介 python内置对象 如何安装发布第三方模块 10最好用的模块汇总 包的本质 datetime模块 案例 Math ...
- c语言标准库详解(七):字符串函数string.h
c语言标准库详解(七):字符串函数<string.h> 头文件<string.h>中定义了两组字符串函数.第一组函数的名字以 str 开头:第二组函数的名字以 mem 开头.除 ...
- c语言标准库详解(十四):时间函数time.h
c语言标准库详解(十四):时间函数<time.h> 概述 头文件<time.h>中声明了一些处理日期与时间的类型和函数.其中的一些函数用于处理当地时间,因为时区等原因,当地时间 ...
- FifoBuffer函数库详解
FFmpeg 项目里面有一个 fifo 的实现 ,fifo 的全称是 first in first out (先进先出),而且这是一个环形的buffer内存管理器,代码实现在 libavutil/fi ...
- mysql5.6+master+date_MySQL5.6的4个自带库详解
1.information_schema详细介绍: information_schema数据库是MySQL自带的,它提供了访问数据库元数据的方式.什么是元数据呢?元数据是关于数据的数据,如数据库名或表 ...
- python gpu加速库比matlab快吗_Python之Unittest和Requests库详解
1.按类来执行 import unittest class f1(unittest.TestCase): def setUp(self): pass def tearDown(self): pass ...
- chrono是一个time library,C++11 std::chrono库详解
C++11 std::chrono库详解 chrono是一个time library, 源于boost,现在已经是C++标准.话说今年似乎又要出新标准了,好期待啊! 要使用chrono库,需要#inc ...
- C++ time.h 库详解
C++ time.h 库详解 time.h 是C++常用标准库之一 常用函数 clock localtime asctime ctime difftime gmtime time tzset strf ...
最新文章
- C++ 简单读写文本文件、统计文件的行数、读取文件数据到数组
- ehcache缓存原理_贼厉害,手撸的 SpringBoot缓存系统,性能杠杠的!
- GridView用法详解
- 内存、数据结构之栈和堆的区别?
- 文献记录(part95)--CCMS: A nonlinear clustering method based on crowd movement and selection
- 影场与属性访问器界面
- linux下NIS服务的配置
- Git部署Git使用Git子模块
- MySQL的Grant命令[转]
- 通达信期货接口有必要开通五档行情?
- 个人设想中的TCAX GUI生成的带python脚本代码的ASS字幕文件
- 关于人工智能(AI),【西部世界】提供一点小想法
- 这些独家记忆串成我们的2022
- HDU 5804 Price List(水~)
- 做旅游的就要有驴子精神
- HashMap的四种遍历方法,及效率比较(简单明了)
- 常用简体中文字体转Unicode和Unicode 2编码对照表
- 5W1H分析法(登陆)
- 全能android按钮,《按键精灵安卓版全能宝典》
- 初学python爬虫,记录一下学习过程,requests库模拟登录01