首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C语言的返回值有关问题

2012-02-12 
C语言的返回值问题C语言的返回值问题求解释:scanf(),gets(),getchar()以及其他函数的返回值。不懂,谁能解释

C语言的返回值问题
C语言的返回值问题

求解释:scanf(),gets(),getchar()以及其他函数的返回值。
不懂,谁能解释一下
十分感谢!

[解决办法]
scanf的返回值
  scanf()函数返回成功赋值的数据项数,读到文件末尾出错时则返回EOF。
如:   
scanf("%d%d", &a, &b);   
如果a和b都被成功读入,那么scanf的返回值就是2   
如果只有a被成功读入,返回值为1   
如果a和b都未被成功读入,返回值为0   
如果遇到错误或遇到end of file,返回值为EOF。   
且返回值为int型.   

其他的函数与之类似
[解决办法]
scanf()函数返回成功赋值的数据项数,读到文件末尾出错时则返回EOF。

gets()读入成功,返回与参数buffer相同的指针;读入过程中遇到EOF(End-of-File)或发生错误,返回NULL指针。所以在遇到返回值为NULL的情况,要用ferror或feof函数检查是发生错误还是遇到EOF。

getchar函数的返回值是用户输入的第一个字符的ASCII码







[解决办法]
scanf() 返回 读取成功或者失败,成功返回的是接受了几个值,失败一般-1。
gets() 返回标准IO流buffer的一行(遇到\n)字符串。
getchar() 返回标准IO流buffer中的第一个字符。
[解决办法]
scanf() 返回 读取成功或者失败。成功返回的是接受了几个值,失败返回-1。
gets() 返回标准IO流buffer的一行(遇到\n)字符串。
getchar() 返回标准IO流buffer中的第一个字符。
[解决办法]
用时 google,或备一本 手册
[解决办法]
scanf 
语法: 
#include <stdio.h>
int scanf( const char *format, ... );
scanf()的返回值是成功赋值的变量数量, 发生错误时返回EOF. 

gets 
语法: 
#include <stdio.h>
char *gets( char *str );
gets()函数从STDIN(标准输入)读取字符并把它们加载到str(字符串)里,直到遇到新行(\n)或到达EOF. 新行字符翻译为一个null中断符. gets()的返回值是读入的字符串,如果错误返回NULL.

getchar 
语法: 
#include <stdio.h>
int getchar( void );
getchar()函数从STDIN(标准输入)获取并返回下一个字符,如果到达文件尾返回EOF. 


 


 

[解决办法]

探讨

13楼的同学,不懂msdn和man是什么意思?

[解决办法]
看看她的原函数,linux下 man scanf等等

热点排行