1、标准IO
标准文件
程序运行时,系统自动打开3个流
标准输入
从标准输入取数据,默认是键盘 stdin --FILE * stdin
标准输出
向标准输出设备输出,默认是显示器 stdout ---FILE * stdout
标准错误输出
向标准错误输出设备输出,默认是显示器 stderr --FILE * stderr
文件打开 fopen
#include <stdio.h>
FILE *fopen(const char *path, const char *mode);
功能:打开或创建并打开 文件
参数:
path : 文件名(包含路径:绝对路径或者相对路径)
mode : 文件打开的方式
r:以只读方式打开 文件必须已存在
r+:以读写方式打开 文件必须已存在
w:以只写方式打开 如果不存在 则创建并打开 存在则清空并打开
w+:以读写方式打开 如果不存在 则创建并打开 存在则清空并打开
a:以追加写的方式打开 如果文件不存在 则创建并打开
a+:以追加读写的方式打开 如果文件不存在 则创建并打开
返回值 :
成功返回FILE 类型指针(文件流指针)
失败返回NULL
错误提示 perror
#include <stdio.h>
void perror(const char *s);
功能:返回上一个函数的错误信息
参数:实际错误信息
按行读取 fgets
#include<stdio.h>
char *fgets(char *s, int size, FILE *stream);
功能:从文件中读取一行
参数:
s:读取的数据存放的位置
size:最多读多大 实际最多能读到的有效字符 size-1个字节
stream:从stream文件中读取一行
如果size < 行字节数 实际读取有效字符size-1 剩下的字符需要循环读取 直到’\n’
如果size > 行字节数 实际读到一行(遇到’\n’停止)
返回值:
成功 返回读到的数据
失败或者到文件结尾 返回NULL