错误定位
当一个库函数出错时,errno会被重置
c
perror(const char* s);\\输出s: + errno 对应的错误信息
\\如果单独想要错误信息可以
char* e = strerror(errno);\\系统错误码转换为对应的错误信息字符串
输出缓冲区
一般输出缓冲区满的时候才刷新,也就是显示到屏幕上。但是有的输出我们可能希望立即刷新。
c
printf("do something");
fflush(stdout);\\立即刷新,不管是否输出缓冲区满
FILE
1、这是一个数据结构,用于访问一个流。不要和文件混淆。
2、一个程序至少有三个流,标准输出流stdout,标准输入流stdin,标准错误流stderr.他们都对应一个指向FILE结构的指针。标准流不需要打开和关闭。
3、fopen 和 fclose用于打开/关闭一个流。通常是文件的操作,即当我们需要处理一个文件时,我们会打开一个对应的流,返回FILE*。
常见IO操作
c
1、只用于stdout,stdin的输入输出(隐含使用了这两个流)
getchar();putchar();\\输入输出字符
gets();puts();\\输入输出一行
scanf();printf();\\格式输入输出。
2、适用所有流的
fgetc();fputc();
fgets();gputs();
fscanf();fprintf();