有人能告诉我一下C语言中gets函数和scanf函数的区别吗

如题所述

char *gets(char *)
从标准输入读取字节流,遇到换行符或文件结束符终止。
例 char a[64];
gets( a );
那么会将读到的字符串保存到a字符数组中,使用的时候有数组越界的危险,要使接收输入的字符数组足够大。
int scanf ( Format [, Pointer, ... ])
根据给定的格式从标准输入读取数据。
例 scanf( "%64s", a ); 从标准输入最多读取64个字符的字符串放到a数组中。比较安全。也可以按照格式,读取整数、浮点数等类型。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-12-29
说的直接点,就是,scanf度字符串时,遇到空格或者回车就会输入结束,而gets,则是可以读空格,遇到回车时,输入才结束
第2个回答  2010-12-27
gets函数包含在string.h头文件中,而scanf包含在stdio.h中。。。
相似回答