C语言中gets(), scanf()区别
C语言中gets(), scanf()区别
相同点:
gets()和 scanf()
1、函数都可用于输入字符串
2、都在stdio.h头文件中定义。
3、字符串接受字符结束后自动加'\0'
不同点:
1、gets() 可以接受space,Tab等键盘输入,遇到enter结束输入;
scanf()不可以接受space,table, enter.遇到这写符号结束输入。
2、gets()会在输入结束之后把 '\0' 替换为 '\n',也好理解,因为必须以 回车结束嘛。
scanf()不会做替换,还是以'\0'结束输入。
通过以上区别,我们可以发现当需要输入字符串(包含空格时)就用gets().
如果只是读取一些变量类型时,就用scanf().