c/c++语言开发共享C语言的中gets(s)和scanf("%s",s)的区别

c语言的中gets(s)和scanf(“%s”,s)的区别 二者都是从终端读入字符串。功能为 1、 gets功能为读入一行,并将换行符转换为字符串结束符。 2、 scanf("%s

c语言的中gets(s)和scanf(“%s”,s)的区别

  二者都是从终端读入字符串。功能为  1、 gets功能为读入一行,并将换行符转换为字符串结束符。  2、 scanf("%s",s);读入时,遇到空白字符,包括空格,制表符,换行符时均会停止输入。    从功能上可以看出不同之处:  1 终止条件不同。gets只有遇到n时才会结束输入,而scanf遇到空格或制表符时,也会结束输入。  比如输入"test stringn"。  用gets得到的字符串为"test string", 二用scanf得到的是"test"。    2 终止后,对终止字符处理不同。  比如输入为"testnabcd"。  执行gets后,n不会留在缓冲区中,即这时调用getchar得到的字符是'a'。  执行scanf后,n会留在缓冲区,这时调用getchar得到的字符是'n'。

 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/607217.html

(0)
上一篇 2021年5月14日
下一篇 2021年5月14日

精彩推荐