1. fgets : 能读到‘ ’ gets : 不能读到‘ ’
2. fgets/fputs : 对 ‘ ’的处理, 有就读 ,么有也不添加
gets : 遇到‘ ’就停不加‘ ’
puts : 会自动添加‘ ’
3. size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream)
nmemb :想写的次数。返回值为实际写入的次数
size_t fwrite(const void *ptr, size_t size, size_t nemeb, FILE *stream)
4. hd : 查看文件(十六进制)
5.使用宏表示常量的原因 : 不要用硬编码 不要使用无意义的常量
6.__FILE__表示文件名使用%s
__LINE__表示行号%d
__func__表示函数%s
7.缓冲区 : 一段内存,为了缓冲数据
为什么有缓冲区 ?
答 : 牺牲空间换取时间
减少慢速操作的次数
三类
无缓冲 : stderr无缓冲,随时同步
行缓冲 : stdin, stdout
同步时机 :遇到‘ ’同步 写满了同步 显示调用fflush(stdout)同步
全缓冲 : 普通文件
同步时机 :写满了, fflush(stdout)同步
8.fclose : 显示调用fflush free 进制正常结束,会将缓冲区同步
英语 : terminating (终止) stored(存储) summarize(总结)