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