C语言gets函数 5

为什么我这里说找不到?... 为什么我这里说找不到? 展开
 我来答
人人顺风顺水
2019-04-22 · TA获得超过164个赞
知道小有建树答主
回答量:315
采纳率:77%
帮助的人:114万
展开全部
vs2015之后,gets函数过时已被取消,可以使用gets_s来替代
刘淘冬
2019-04-22 · TA获得超过623个赞
知道小有建树答主
回答量:193
采纳率:72%
帮助的人:83.1万
展开全部
应该是需要#include<string.h>这个头文件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
龙楚六绮梦
2020-11-07 · TA获得超过1365个赞
知道小有建树答主
回答量:1842
采纳率:100%
帮助的人:9.4万
展开全部
楼上的写法是错的,定义st[15],它的内存只开了存储15个字符的单无,而不是16个.
但是你定义15个而输入15个,不考虑后面的结束符是允许的.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蓟精雀安琪
2020-09-26 · TA获得超过1107个赞
知道小有建树答主
回答量:1780
采纳率:100%
帮助的人:8.4万
展开全部
gets()函数会自动在数组后加'\0',但不会判断数组上界。因此即使越界也可以全部输出。但容易出错。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
濒危物种1718
2020-04-05 · TA获得超过1.2万个赞
知道大有可为答主
回答量:6716
采纳率:100%
帮助的人:47.6万
展开全部
楼主的意思是I
am
a
student.这里正好是15个字符,后面再加上结束的\0,应该总数是16是吧,超过了你定义的15了是吧,怎么没报错对吧
楼主你定义的就是16大小的数组啊,st[15],是从0开始的0~15不是16个数啊,所以没错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式