机试练习总结06:c语言输入&输出&文件读写
Posted alyssayoung
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机试练习总结06:c语言输入&输出&文件读写相关的知识,希望对你有一定的参考价值。
一、标准文件
c语言把所有设备当作文件。
stdin:键盘、标准输入
stdout:屏幕、标准输出
stderr:您的屏幕、标准错误
头文件:stdio.h
二、getchar() & putchar()
int getchar(void) 从屏幕读取下一个可用字符,并用它返回为一个整数。
int putchar() 该函数同一时间内只会输出一个单一的字符。
三、gets() & puts() 函数
char *gets(char *s) 从stdin读取一行到s所指向的缓冲区,直到一个终止符或EOF。
int puts(const char *s) 把字符串s和一个尾随的换行符写入到stdout。
四、scanf() & printf() 函数
int scanf(const char *format, ...) 函数从标准输入流 stdin 读取输入,并根据提供的 format 来浏览输入。
int printf(const char *format, ...) 函数把输出写入到标准输出流 stdout ,并根据提供的格式产生输出。
五、文件读写——创建、打开、关闭文本或二进制文件
1. 打开文件
fopen()函数创建一个新的文件或者打开一个已有的文件
FILE *fopen( const char * filename, const char * mode );
mode可以是以下值中的一个:
r:打开一个已有文件,允许读取;
w:打开一个文本文件,允许写入;如果文件不存在,则创建一个新文件;
a: 打开一个文本文件,以追加模式写入文件;如果文件不存在,则创建一个新文件;
r+:打开一个文本文件,允许读写文件;
w+:打开一个文本文件,允许读写文件;如果文件已存在,则文件会被截断为零长度;如果文件不存在,则会创建一个新文件;
a+:打开一个文本文件,允许读写文件;如果文件不存在,则会创建一个新文件;读取会从文件的开头开始,写入只能是追加模式。
若读取的是二进制文件,则需使用下面的访问模式代替上面访问模式:
"rb", "wb", "ab", "rb+", "r+b", "wb+", "w+b", "ab+", "a+b"
2.关闭文件
fcolse()函数
int fclose( FILE *fp );
如果成功关闭文件,fclose()函数返回0,如果关闭文件时发生错误,函数返回EOF。这个函数实际上,会清空缓存区中的数据,关闭文件,并释放用于该文件的所有内存。
EOF是一个定义在头文件stdio.h中的常量。
3.写入文件
fputs()
int fputs( const char *s, FILE *fp );
把字符串s写入fp所指向的输入流。写入成功,返回写入的字符;如果发生错误,则返回EOF。
也可以使用 int fprintf(FILE *fp,const char *format, ...) 函数来写把一个字符串写入到文件中。
4. 读取文件
(1)从文件中读取单个字符
int fgetc( FILE * fp );
返回值是读取的字符,如果错误,返回EOF。从fp所指向的输入流中读取一个字符。
(2)从fp所指向的输入流中读取n-1个字符
char *fgets( char *buf, int n, FILE *fp );
把读取的字符串复制到缓冲区buf,并在最后追加一个null字符来终止字符串。如果这个函数在读取最后一个字符之前就遇到一个换行符 ‘ ‘ 或文件的末尾 EOF,则只会返回读取到的字符,包括换行符。
也可以使用 int fscanf(FILE *fp, const char *format, ...) 函数来从文件中读取字符串,但是在遇到第一个空格字符时,它会停止读取。
以上是关于机试练习总结06:c语言输入&输出&文件读写的主要内容,如果未能解决你的问题,请参考以下文章