标准io; stdio.h
IO input output
I: 键盘是标准输入设备 ====》默认输入就是指键盘 /dev/input
O: 显示器是标准输出设备 ==》默认输出就是指显示器
Linux操作系统当中IO都是对文件的操作
C一部分,任何支持标准C的系统都可使用标准IO实现文件存储
标准IO在UNIX上是对文件IO的封装
标准IO:
ANSI C 设计的一组用文件IO 封装的操作库函数
头文件: stdio.h -->标准输入输出头文件
/usr/include/stdio.h
系统库函数,默认路径在/usr/include/
eg : ====》stdio.h ===>stdio.c==>libc.so ==>/usr/lib so 动态库
"" 是用户自定义函数,默认是当前路径
eg : ===>xxx.h ===>xxx.c
man man ==>所有man的帮助
man xxx == man 1 xxx ===>查看当前xxx命令
man 2 xxx ===>查看xxx对应的系统调用函数
man 3 xxx ===》查看xxx对应的标准库函数
注意:如果没有命令则直接man xxx 会显示其函数\n
如果没有系统调用则显示系统库函数帮助
流的分类:
二进制流: 2001 \n
二进制数据的流
文本流:
ASCII码数据的流 \n \t
FILE 结构定义的对象 FILE * 称之为流对象,也叫文件流指针。
流对象 ===》头 《===数据====》尾
stdin FILE* scanf ();
stdout printf();
stderr
文件操作步骤
1,打开文件 fopen
2,io操作,,读写操作
3,关闭文件
(1), fopen,
FILE *fopen(const char *path, const char *mode);
功能:打开一个文件并建立一个流
参数:
path:要打开文件的路径
mode:
r 只读
文件不存在报错
文件存在则只读打开
r+ 读写
文件不存在报错
文件存在则读写打开
w 只写
文件不存在则创建
文件存在则清0只写打开
w+ 写读
文件不存在则创建
文件存在则清0写读打开
a 追加可写
文件不存在则创建
文件存在则追加只写打开
a+ 追加读写
文件不存在则创建
文件存在则追加读写打开
返回值:
成功返回建立的文件流指针
失败返回NULL
(2), 读写操作相关,
fgetc/fputc,,,,,,一个字符,
fgets/fputs....,,一次一行
fread/fwrite....自定义大小,,二进制
(3),fclose..
关闭文件 fclose(fp)