文件函数小结

看一个函数,看参数个数,参数格式, 二看函数返回值 

 

查看12.17号写的程序。

FILE*fp 定义一个文件指针变量,fp

fp = fopen(“a.txt”, “w”);

打开了a.txt文件,fp指向了该文件,作为该文件的标记位。

第一个参数是文件名组成的字符串,或字符串指针,或字符数组名。

 

就可以在当前文件里面对a.txt文件 (只能)进行 写 操作(r只读,aa.txt后面追加操作)

对于以a方式打开的文件rewind 和fseek函数不能改变文件偏移指针的位置,永远指向文件尾。

 

如果想读里面的数据,必须先fclosefp),然后以a +r的的方式打开fp指向的文件。

不能以ww+的方式打开fp指向的文件,这样会使文件内容被覆盖掉。

 

常用ifNULL ==fp=fopen(“文件名”,“打开方式”))

fclosefp);//关闭fp所指向的文件,此后fp不在指向a.txt 文件。

参数是文件指针。

 

文件缓冲区4096个字节,内存每存入4096个字节就会自动的往磁盘里写入一次,遇到fclose函数也会往磁盘里面写入。

 

文件空洞:用数值0

创建一个大于2.5g的文件

 

gets()函数不再使用getchar()会把 存在缓冲区内,再次遇到getchar()时取得 等价于执行enter键。

 

fgetcfp)从fp指向的文件读入一个字符。成功返回所读的字符,失败返回EOF 也就是-1

fputc(‘c’,fp)向fp指向的文件里面写入一个字符,第一个参数代表一个字符,或字符变量,或字符数组里面的元素。成功返回该字符,失败返回0

 

fgetsstrnfp)从fp指向的文件复制 n-1 个字节,第n个字节系统自动赋为 " " 放到str字符数组元素sti[n-1]中。成功返回str的指针,失败返回NULL.第一个参数是字符数组名,字符串。

 

fputs strfp)把字符数组中的字符串复制到fp指向的文件中,成功返回0;失败返回非0值。第一个参数是字符串指针,字符数组名,字符串常量。

''字符会不会被写到写到文件里面去,不知道,不过 再次字符串时会直接在后面写进去。

 

 

fprintf(文件指针,格式字符串,输出变量列表);

fprintf(fp,“%d%f”,if)//成功返回处理数据 占 的字节数

 

fscanffp,“%d%f”,&i&f);

这两个函数比printf scanf函数仅仅多了一个参数 文件指针,告诉我们要输入输出的文件是哪一个。成功返回格式字符串里面参数的个数

 

freadbuffersizecountfp);//从文件里面读的时候,是要把文件里的二进制文件转换成ascii码。

参数从后往前的意思是,从fp指向的那个文件里面读取count块儿每块长度为size个字节的数据,放到当前程序所占内存的buffer区。

 

fwritebuffersizecountfp);//往文件里面写的时候,把ascii码转换成二进制文件。

参数从后往前的意思是,从当前程序所占内存的buffer区读取count块儿每块长度为size个字节的数据,放到fp指向的那个文件里面。

上两个函数读写的是二进制数据

 

rewind 函数使文件位置标记指向文件开头。

 

fseek(文件指针,+—移动的字符数LSEEK_*,第一个参数代表要移动的文件的标志符,第二个参数代表要将标识符 前、后移动的字符个数,+代表后移动。— 号代表前移。

第三个参数代表要将标识符从哪个地方移动,0,SEEK_SET代表文件首,1,SEEK_CUR代表标识符当前位置,2,SEEK_END代表文尾部。

ferror fp);用来检查文件输入输出的错误检测。没错误返回0;出错返回非0

clearerrfp);

原文地址:https://www.cnblogs.com/vhwuln/p/3481850.html