第十三章:文件输入/输出
编写程序,对文件的操作是肯定会遇到的,无论是使用那种语言,都可能会遇到这样类似的需求,因为系统的目的是为人们日常生产生活提供便利,难免会遇到文件的使用。在这一章,我们便学习并了解一下文件在程序里面应该如何去使用。
C语言提供两种访问文件的途径:二进制模式和文本模式。在二进制模式中,程序可以访问文件的每个字节。而在文本模式中,程序所见的内容和文件的实际内容不同,程序以文本模式读取文件时,会把本地环境表示的行末尾或文件结尾映射为C模式。
I/O的两个级别:底层I/O使用操作系统提供的基本I/O服务。标准高级I/O使用C库的标准包和stdio.h头文件定义。
标准文件:C程序会自动打开三个文件,它们被称为标准输入、标准输出和标准错误输出。默认情况下,标准输入是系统的普通输入设备,通常为键盘;标准输出和标准错误输出是系统的普通输出设备,通常为显示屏。
标准I/O的好处;第一,它有许多专门的函数简化了处理不同I/O的问题。第二,输入和输出都是缓冲的。
exit()函数:关闭所有打开的文件并结束程序。通常的惯例是:正常结束的程序传递0,异常结束的程序传递非零值。标准要求0或宏定义EXIT_SUCCESS用于表明成功结束程序,宏EXIT_FAILURE用于表明结束程序失败,这些宏以及函数原型都位于stdlib.h头文件中。如果main()函数在一个递归程序中,exit()仍然会终止程序,但是return只会把控制权交给上一级递归,直至最初的一级。然后return结束程序。在所有函数中,包括递归之内,调用exit()都会结束这个程序。
fopen()函数:第一个参数是待打开文件的名称,确切的说是一个包含该文件名的字符串地址。第二个参数是一个字符串,指定待打开文件的模式。成功打开文件之后,fopen返回文件指针,其他I/O函数可以根据这个指针指定该文件,文件指针的类型是指向FILE的指针。
getc()函数:从指定的文件中获取一个字符,参数为指定的文件。
putc()函数:把字符放到指定的文件中,第一个参数是待写入的字符,第二个是文件指针。
fclose()函数