1、标准I/O介绍
2、标准I/O的常用函数
2.1 文件的打开和关闭
// 文件的打开
// 返回值:成功返回FILE *类型的指针,失败返回NULL
FILE *fopen(const char *path, const char *mode);
参数mode:
mode | description |
r |
① 以只读的方式打开文件 ② 若文件不存在会报错 ③ 文件位置指针被定位在文件首 |
r+ |
① 以读写的方式打开文件 ② 若文件不存在会报错 ③ 文件位置指针被定位在文件首 |
w |
① 以只写的方式打开文件 ② 若文件已经存在则截断(Truncate) ,若文件不存在则创建该文件 ③ 文件位置指针被定位在文件首 |
w+ |
① 以读写的方式打开文件 ② 若文件已经存在则截断(Truncate) ,若文件不存在则创建该文件 ③ 文件位置指针被定位在文件首 |
a |
① 以追加(appending)的方式打开文件(只写) ② 若文件不存在则创建该文件 ③ 文件位置指针被定位在文件尾 |
a+ |
① 以读和追加(appending)的方式打开文件 ② 若文件不存在则创建该文件 ③ 读的初始文件位置指针在文件首,写永远是文件尾(每次写都会将其定位到尾部) |
b |
the 'b' is ignored on all POSIX conforming systems, including Linux.(man手册中的解释) b 这个参数在Linux上系统上是无意义的,这个参数用在Windows中用于区分文本文件和二进制文件。 |
// 文件的关闭
// 返回值:成功返回0,失败返回EOF
int fclose(FILE *fp);
使用fopen打开的文件不要忘记使用fclose关闭,否则会造成资源泄露。
2.2 字符和字符串的读写
2.3 printf和scanf函数族
2.4 文件位置指针
2.5 文件缓冲