C语言输入字符串
发布时间:2023-05-11 09:01:49 所属栏目:语言 来源:
导读:输入字符串当然可以使用 scanf() 这个通用的输入函数,对应的格式控制符为%s,上节已经讲到了;本节我们重点讲解的是 gets() 这个专用的字符串输入函数,它拥有一个 scanf() 不具备的特性。
gets() 的使用也很简单
gets() 的使用也很简单
|
输入字符串当然可以使用 scanf() 这个通用的输入函数,对应的格式控制符为%s,上节已经讲到了;本节我们重点讲解的是 gets() 这个专用的字符串输入函数,它拥有一个 scanf() 不具备的特性。 gets() 的使用也很简单,请看下面的代码: #include <stdio.h> int main() { char author[30], lang[30], url[30]; gets(author); printf("author: %s\n", author); gets(lang); printf("lang: %s\n", lang); gets(url); printf("url: %s\n", url); return 0; } 运行结果: YanChangSheng↙ author: YanChangSheng C-Language↙ lang: C-Language http://c.biancheng.net http://biancheng.net↙ url: http://c.biancheng.net http://biancheng.net gets() 是有缓冲区的,每次按下回车键,就代表当前输入结束了,gets() 开始从缓冲区中读取内容,这一点和 scanf() 是一样的。gets() 和 scanf() 的主要区别是: scanf() 读取字符串时以空格为分隔,遇到空格就认为当前字符串结束了,所以无法读取含有空格的字符串。 gets() 认为空格也是字符串的一部分,只有遇到回车键时才认为字符串输入结束,所以,不管输入了多少个空格,只要不按下回车键,对 gets() 来说就是一个完整的字符串。 也就是说,gets() 能读取含有空格的字符串,而 scanf() 不能。 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
