c语言,我还是没闹明白scanf和gets有什么不同

2024-12-25 02:00:10
推荐回答(3个)
回答1:

差不多吧,说简单点就是如果用scanf,当你输入中有空白字符(空格,回车,制表符)时,scanf只能读入到这些符号之前的东西,后面的就等于舍弃了;而用gets,就可以把你输入之中的空白字符也读入。

回答2:

gets函数仅用于读入字符串。
scanf为格式化输出函数,可以读入任意C语言基础类型的变量值,而不是仅限于字符串(char*)类型
gets函数固定的以换行符作为结尾,遇到换行符时结束输入。

scanf函数默认以空白函数结尾,同时可以对截止函数进行修改。

回答3:

是的
scanf输入字符串时,遇到空格就终止,所以不能输入有空格的字符串.
gets输入字符串时,以回车结束,可以接收空格