1. fopen函数:fopen("文件名","打开方式")、FILE *fopen( const char *filename,const char *mode );
r 打开只读文件,该文件必须存在。r+ 打开可读写的文件,该文件必须存在。rb+ 读写打开一个二进制文件,只允许读写数据。rt+ 读写打开一个文本文件,允许读和写。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留) a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。(原来的EOF符不保留) wb 只写打开或新建一个二进制文件;只允许写数据。 wb+ 读写打开或建立一个二进制文件,允许读和写。 wt+ 读写打开或着建立一个文本文件;允许读写。 at+ 读写打开一个文本文件,允许读或在文本末追加数据。 ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。
2. fopen_s函数:fopen_s比fopen多了溢出检测,更安全一些。fopen_s(地址指针,"文件地址","打开方式")
例如fopen_s(&id,"test.txt","r");读取test并让id指针指向这个文件。打开方式同fopen。
3. fclose函数:fclose(文件路径下的文件名);
fclose函数是关闭某个路径下的某个文件。把这个文件流关闭。该函数返回一个整型数。当文件关闭成功时 返回0, 否则返回一个非零值。一般在使用fclose之后都要判断是否关闭成功。
4. fscanf函数:fscanf(fp,"%s",temp_str);和fscanf(fp,"%lf",&min_snr);
fscanf就是从文件中读取数据,保存到第三个参数开始的变量里fp是一个FILE类型的指针fscanf(fp,"%s",temp_str); // 就是从文件指针fp里面读取一个字符串,保存到temp_str里面,跟scanf差不多,只是scanf是从键盘输入,fscanf是从文件里读取fscanf(fp,"%lf",&min_snr); // 同理是从文件中读取一个double类型的数据,保存到min_snr里面。
5. memset 函数: memset(目标起始地址, 要赋的值, 要赋值的字节数);
memset是内存赋值函数,用来给某一块内存空间进行赋值的。 其原型是:void* memset(void *_Dst, int _Val, size_t _Size)。
6. strcpy 函数:strcpy (被赋值指针变量,被复制指针变量);
strcpy函数是复制被复制指针变量字符串中的字符到字符串被赋值指针变量,包括空值结束符。返回值为被赋值指针变量。由于没有字符串长度的限制,所以复制过程中遇到过长的字符串可能会发生未知的错误。其原型是:char *strcpy( char *to, const char *from );
7. strcpy_s函数:strcpy_s (被赋值指针变量,复制长度,被复制指针变量);
复制被复制指针变量中的字符到被赋值指针变量中,其中限制了大小为复制长度,这是为了防止字符串过长超出缓存区内存引发问题而要求的。
8. strcat函数:strcat(字符串变量,”添加字符串”);
strcat函数是在原有字符串变量的后面直接加上添加字符串。
9. fprintf函数:fprintf(文件指针,格式字符串,输出表列);
fprintf函数的读写对象不是键盘和显示器,而是磁盘文件。