老是搞混几个输入输出函数,好记性不如烂笔头,现在好好把它记录下来,便于以后忘记了再来看看。
输入函数
scanf
原型:int scanf ( char * format [ ,argument, … ]);功能:格式化输入数据,数据来源于stdin,并将数据读入指定的
变量中。返回值:成功则返回被赋值的参数的个数。
fscanf
原型:int fscanf(FILE * stream, char *format [, argument ,… ] );功能:从一个流中执行格式化输入,遇到空格和换行时结束,fscanf( stdin, format [, argument ,… ] ) 等价于 scanf( format [, argument ,… ] ),fscanf() 可以指定读取的流,scanf() 只能从标准输入流(stdin)读取。
返回值:成功返回读入的参数的个数,失败返回EOF(-1)。
getc
原型: int getc(FILE *stream);功能:从一个文件中读取一个字符,读到文件尾而无数据时便返回EOF。getc()与fgetc()作用相同,但在某些库中getc()为宏定义,而非真正的函数。
返回值:成功后,将返回所读取的字符。
fgetc
原型:int fgetc(FILE * stream);功能:从文件流中读取一个字符。
返回值:成功返回读取到的字符,读到文件结尾时返回EOF。
getchar
原型:int getchar(void);功能:从标准输入控制台读取字符
返回值:函数的返回值为用户输入的第一个字符的ASCII码,若出错返回-1,且将用户输入的字符回显到屏幕。如果用户在按回车键之前输入了不只一个字符,其他字符会保留在键盘缓冲区中,等待后续getchar()调用读取。也就是说,后续的getchat()调用不会等待用户按键,而是直接读取缓冲区中的字符,直到缓冲区的字符读取完毕后,才等待用户按键。
gets
原型: char *gets(char *string);功能:从缓冲区中读取字符串
返回值:若成功则返回string的指针,否则返回NULL
fgets
原型: char * fgets(char * string, int size, FILE * stream);功能:从文件流中读取一行或指定个数的字符
返回值:读取成功,返回读取到的字符串,即string;失败或读到文件结尾返回NULL
输出函数
printf
原型: int printf( char * format, … );功能:格式化输出到stdout
返回值:成功则返回写入的字符数目
fprintf
原型:int fprintf (FILE* stream, const char*format, [argument])功能:格式化输出到一个文件中
返回值:成功则返回写入的字符数目
putc
原型:int putc(int ch, FILE *stream);功能:输入一个字符到指定流中
返回值:若正确,返回输入的的字符,否则返回EOF。
fputc
原型:int fputc (char c, File *fp)功能: 将字符ch写到文件指针fp所指向的文件的当前写指针的位置
返回值:在正常调用情况下,函数返回写入文件的字符的ASCII码值,出错时,返回EOF(-1)。当正确写入一个字符或一个字节的数据后,文件内部写指针会自动后移一个字节的位置。
putchar
原型: int putchar (int ch);功能:将字符ch输出到标准输出终端上
返回值:输出成功,返回该字符的ASCII码值,否则返回EOF
puts
-原型:int puts(char *string);功能:将一字符串放到标准输出流
返回值:输出成功返回非0值,否则返回0
fputs
原型: int fputs(char * string, FILE * stream);功能:将指定的字符串写入到文件流
返回值:成功返回非负数,失败返回EOF
输入、输出函数来自于stdio.h,具体内容都在以下的网页都有。
http://c.biancheng.net/cpp/u/stdio_h/