memecpy(void*dest,const void* source,siez_t num);
函数memcpy(arr2,arr1,10);从数组arr1拷贝10个字符到arr2空间内。
一、为什么使用文件?
使数据的持久化。
二、什么是文件?
磁盘上的文件是文件;程序文件、数据文件。
三、程序文件,后缀为.c,目标文件(后缀.obj)可执行程序(后缀我i.exe).
四、数据文件:程序运行时读写的数据。
五、文件名:文件的唯一标识符,以便用户识别和使用。
文件名包含三部分:文件路径+文件名主干+文件后缀。例如:c:\code\test.txt
六、文件的打开和关闭:1.打开文件。2.读写文件。3.关闭文件。
文件指针:指向FILE文件结构体。
七、打开文件:fopen(const char* filename,onst char * mode):(文件指针,文件打开方式);
#include <string.h>
#include<errno.h>
FILE* pf =fopen("test.txt","r");
if(pf==NULL){printf("%s\n",strerror(errno));return 1;}
八、字符输入fgetc,字符输出函数fputc,文本输入fgets,文本输出fputs,格式化输入fscanf,格式化输出fprintf,二进制输入fread,二进制输出fwrite
获取字符串错误信息strerror(errno);打印字符串信息perror("fopen");print error message
九、任何一个c程序只要运行起来就会默认打开三个流:
FILE* stdin:标准输入流(键盘)
FILE* stdout:标准输出流(屏幕)
FILE*stderr:标准错误流(屏幕)
scanf是针对标准输入的格式化输入语句
printf是针对标准输出 的格式化输出语句
fscanf是针对所有输入流的格式化输入语句
fprintf是针对所有输出流的格式化输出语句
sscanf从一个字符串中转化处一个格式化的数据
sprintf是一个把格式化的数据转化成字符串
十、Savecontact();保存通讯录{assert(p);
十一、rewind函数:让文件指针的文职回到文件的起始位置。void rewind(FILE* stream);
十二、文本文件和二进制文件:内存中的二进制形式存储不加转换输出到外存就是二进制文件如果要求在外存上以ASCII码的形式存储,则需要在存储前转化,以ASCII字符形式存储的文件就是文本文件。
被错误使用的feof在文件读取过程中,应用于当文件读取结束时候,判断是读取失败结束还是遇到文件尾结束。
十三、文件缓冲区: