标题:
C语言学习12.文件和IO(3)
[打印本页]
作者:
look_w
时间:
2019-3-3 19:31
标题:
C语言学习12.文件和IO(3)
文件的关闭
Fclose();
如果文件还没关闭就直接结束运行的程序,缓冲区内没有写入文件的数据就会丢失。所以文件使用后及时关闭。
文件关闭后,系统回收文件结构体变量,文件指针也不会指向该文件,此后也无法访问该文件。
文件输入:从文件中输入数据
文件输出:输出数据到文件
fscanf(文件指针,格式字符串,输入列表);
fprintf(文件指针,格式字符串,输出列表);
例如:
fscanf(fp,"%d%s,&i,s");
读写数据块函数调用的一般格式:
fread(buffer,size,count,fp);
fwrite(buffer,size,count,fp);
其中:
buffer 是一个指针,在fread函数中,他表示存放在输入数据的首地址;在fwrite函数中,他表示存放输出数据的首地址。
size 表示数据块的字节数
count 表示要读写的数据块块数
fp 表示文件指针
按字符读写
函数fgetc(),fputc();
Int fputs(int ch,FILE* fp);
ch是写入文件的字符,fp是FILE类型的文件指针变量。
fputc(‘A’,fp);
将指针变量fp指向的文件当前位置写入一个字符常量’A’,并使文件的位置指针下移一个字节。如果写入成功,函数返回该字符,否则返回文件结束符EOF。
按字符串读写的函数fgets(),fputs();
‘\0’不会写入文件中
按格式要求读写的函数fprintf(),fscanf();
按数据块读写的函数fread(),fwrite();
ferror函数:
ferror(FLIE*);
功能:检查文件是否在用各输入输出函数进行读写时是否出错。返回0表示没出错,否则表示出错。
clearrr(FLIE *);
功能:用于清除错误标志和文件结束标志,使他们为0值
标准I/O和文件I/O混合使用
标准输入,标准输出和标准错误时三个特殊的文件,这三个文件在我们程序开始运行时系统会自动打开它们,对应的文件指针stdin,stdout,stderr这三个常量(在stdio.h文件中使用的),我们在程序中可以直接使用他们,用完后也不需要显式关闭,系统会自动关闭它们。
主函数参数用于接收命令行参数,如果不需要改功能,主函数形参可以留空
Int main(int argc,char* argv[])
主函数形参的意义:
Argc:argument count命令行参数个数
Argv:argument vector命令行参数构成的字符串数组,每个命令行参数就是它的一个元素,第0个元素为命令本身
在程序外部向程序内部传递数据有三种方法:
1.标准输入
2.文件输入
3.命令行参数
每个文件末尾都有一个文件结束符,它不占实际存储空间
文件结束符:EOF,其值为-1,它为文件结束标志
只有将EOF读出,feof函数才认为到了文件末尾。
调用格式:
feof(文件指针):
功能:判断文件是否处于文件结束位置,如文件结束,则返回值为1,否则为0.
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0