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().

 

posted @ 2019-02-01 10:47  wjwdive  阅读(655)  评论(0编辑  收藏  举报