C语言gets函数的用法,能用代码举个例子么

 我来答
很多游戏
高粉答主

2019-05-30 · 游戏精通者,攻略技能点满
很多游戏
采纳数:91 获赞数:386999

向TA提问 私信TA
展开全部

1、gets() 函数是从键盘输入字符串,该函数只有一个参数。参数类型为 char* 型,即 str 可以是一个字符指针变量名,也可以是一个字符数组名。打开编辑器,新建一个c语言文件,引入标准库并新建主函数:

2、gets() 函数的功能是从输入缓冲区中读取一个字符串存储到字符指针变量 str 所指向的内存空间,这里的程序是用gets函数输入字符串,可以看到不像scanf那样需要使用%号,gets函数中直接传入字符串即可:

3、最后运行下程序,输入“i love you”,可以看到gets函数可以直接输出空格,而scanf函数输出空格则需要使用转义字符实现,因此gets函数的使用要比scanf简洁的多。以上就是gets函数使用方法的演示:

四舍五不入6
高粉答主

2020-03-22 · 还没有填写任何签名哦
四舍五不入6
采纳数:27 获赞数:71370

向TA提问 私信TA
展开全部

c语言,gets()函数用来从标准输入设备(键盘)读取字符串直到换行符结束,但换行符会被丢弃,然后在末尾添加'\0'字符。

其调用格式为:gets(s)。其中s为字符串变量(字符串数组名或字符串指针)。如果为单个字符指针,编译连接不会有错误,但运行后内存溢出错误。

扩展资料:

gets()函数用于从缓冲区中读取字符串,其原型如下:

char *gets(char *string);

gets()函数从流中读取字符串,直到出现换行符或读到文件尾为止,最后加上NULL作为字符串结束。

返回值,若成功则返回string的指针,否则返回NULL。

注意:由于gets()不检查字符串string的大小,必须遇到换行符或文件结尾才会结束输入,因此容易造成缓存溢出的安全性问题。

参考资料来源:百度百科-gets

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hushengqq4212
推荐于2017-11-25 · TA获得超过105个赞
知道答主
回答量:68
采纳率:0%
帮助的人:29.8万
展开全部
/*1.不同点:
scanf不能接受空格、制表符Tab、回车等;
而gets能够接受空格、制表符Tab和回车等;
2.相同点:

字符串接受结束后自动加'\0'。 使用scanf("%s",&s);函数输入字符串时存在一个问题,就是如果输入了空格会认为字符串结束,空格后的字符将作为下一个输入项处理,但gets()函数将接收输入的整个字符串直到遇到换行为止*/

#include "stdio.h"
#include "string.h"
int l1=0,l2=0; //l1小写字母个数,l2大写字母个数
main()
{
void str(char,int);
char c[100];
int length;
printf("Please input a string");
/* scanf("%s",c);*/
gets(c);
length=strlen(c);
str(c,length);
printf("小写字母个数:%d,大写字母个数:%d\n",l1,l2);
}
void str(char b[],int n)
{
int i;
for(i=0;i<n;i++)
if('a'<=b[i]&&b[i]<='z') l1++;
else if('A'<=b[i]&&b[i]<='Z') l2++;
else if(b[i]=' ') continue;
}
你看看吧希望能给你帮助
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友26ad406
2012-12-20 · TA获得超过1611个赞
知道大有可为答主
回答量:1506
采纳率:100%
帮助的人:1079万
展开全部
gets是获取一个字符串以回车结尾可以包含空格
char str[100];
gets(str);
printf("%s",str);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式