C语言 字符串数组

#includevoidmain(){inti,n;charp[100];scanf("%d",&n);for(i=0;i{scanf("%c",&p[i]);}for(... #include void main() { int i,n; char p[100]; scanf("%d",&n); for(i=0;i { scanf("%c",&p[i]); } for(i=0;i { printf("%c",p[i]); } } 输入多个字符,却只能输出一个字符,不知道问题出在哪了,请指教! 展开
 我来答
局可艾绮烟
2020-05-23 · TA获得超过1150个赞
知道小有建树答主
回答量:1818
采纳率:100%
帮助的人:8.4万
展开全部
字符串输出在遇到'\0'字符前不会停
char*
p
=
"123\0456";
printf(p);
//
输出123
p[3]
=
'&';
printf(p);
//
输出123&456
你代码里为什么那样是因为多位数组的存储空间是连续的
两句strcpy后arr数组是变这样
you.me.?
其中.代表空字符,?是未使用的空间
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
甲永宇文元柳
2020-08-30 · TA获得超过1074个赞
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部
譬如
你输入4hello,输出是hell,
你表达是这个意思吗?
如果你输入4回车hello的话,输出的是hel。
因为回车也占用了字符数组的元素。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式