您的位置:首页 > 其它

C Primier Plus 第十三章 文件输入/输出

2013-04-26 10:16 162 查看
1、exit()函数:关闭所有打开的文件并终止程序;在main()中exit(0)和return 0作用相同;exit(0)正常终止,非0表示非正常终止。P357

2、fopen()函数:用于打开文件。fopen(argv[1],"r")第一个参数表示要打开的文件名(更确切的说是表示该文件名的字符串的地址),第二个参数是用于指定文件打开模式的一个字符串。fopen()成功打开一个文件之后会返回一个指针,不能打开文件则返回空指针。P357.

3、FILE *fp:fp是文件指针,是一种指向文件FILE的指针;FILE是stdio.h中定义的一种派生类型。fp不指向实际的文件,而是只想一个关于文件的信息数据包,其中包括文件I/O使用的缓冲区信息,需要知道缓冲区的位置及缓冲区的打钱缓冲能力和所使用的文件。

4、getc()函数和putc()函数:这两个函数和getchar和putchar这两个函数非常相似,不同之处在于需要告诉getc()和putc()函数他们使用要使用的文件。

ch=getchar()表示从标准输入(例如键盘输入)获得一个字符;ch=getc(fp)表示从指针fp指定的文件获得一个字符,如果在尝试读入字符时发现已经到文件结尾,getc()函数将会返回一个特殊值EOF;putc(ch,fpout)表示将ch写入到FILE指针fpout指定的文件中;putc(ch,stdout)和putchar()的作用是一样的,stdou指针是在stdio.h中定义的与标准输出相关联的文件指针。

5、fclose()函数:fclose(fp)函数关闭指针fp指定的文件,同时根据需要刷新缓冲区。如果函数成功关闭,fclose()函数将返回值0,否则返回EOF。

6、fprintf()和fscanf()的工作方式和printf和scanf相似,区别在于前者需要第一个参数指定合适的文件。fprintf(fp,"%s",words)第一个参数是文件的指针,第三个参数是一个数组名称。fscanf()类似。

7、gets()和puts():gets(words)和puts(words)只有一个参数;而fgets(buf,MAX,fp)和fputs(buf,fp)有如前所示参数,buf是一个char数组的名称,MAX是字符串的最大长度,fp是一个FILE指针。与gets类似遇到EOF会返回NULL,可以据此检查文件结尾,否则它返回它的地址。fputs他把字符串地址指针所知的字符串写入指定的文件。puts和fputs的不同是fputs打印的时候不添加一个换行符。

8、rewind():该命令使程序回到文件的开始处,接受一个文件指针参数。例如rewind(fp)。

9、fseek()函数:fseek(fp,偏移量,用来标识起始点)第一个参数是一个指向被搜索文件的FILE指针,使用fopen打开;第二个参数是偏移量;第三个参数是模式(SEEK_SET文件开始,SEEK_CUR当前位置,SEEK_END文件结尾),用来标识起始点。正常情况返回值为0,超出文件范围返回值是-1.fseek(fp,0L,SEEK_END)表示把当前位置设定为文件结尾.

10、ftell()函数:通过返回距文件开始处的字节数目来确定文件的位置。ftell(fp)

11、fgetpos函数和fsetpos函数:int fgetpos(FILE *restrict stream,fpos_t *restrict pos)被调用时该函数在pos所指的位置放置一个fpos_t类型的值,这个值描述了文件中的一个位置,成功返回0不成功返回一个非0。int fsetpos(FILE *stream,const fpos_t *restrict pos)被调用时该函数使用pos指向的位置上的那个fpos_t值设定文件指针指向该值所指示的位置,如果成功,函数返回0,否则非0.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: