一个字符数组只能存放一个字符串,是这样吗?

 我来答
文库地摊
推荐于2018-03-10 · TA获得超过1196个赞
知道小有建树答主
回答量:663
采纳率:100%
帮助的人:417万
展开全部
一般来说,字符串是以'\0'字符为结尾的, 一个字符数组可以放多个以'\0'为分隔的字符串, 只要处理好每个字符串的头指针,就没问题. 所以"一个字符数组只能放一个字符串"是不对的.
当然,大多数都不这么做,容易出错.
更多追问追答
追问
printf("%s\n",a);
a为数组名,那是不是只能输出第一个字符串?
追答
嗯,如果是这样的话,输出的是第一个字符串.
feifan3333
推荐于2017-12-16
知道答主
回答量:22
采纳率:0%
帮助的人:18.8万
展开全部
字符数组与字符串没太大区别,字符串只是在字符数组后加了一个串结束符'\0',如果一个字符数组中有多个串结束符,也可以存多个字符串,如下例;只不过一般都是一个字符数组存一个字符串。
main()
{
char s[]={'h','e','l','l','o','\0','w','o','r','l','d','\0'};
char *p;
p=&s;
printf("%s",p);
printf("%s",p+6);
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rssg888
2012-06-15 · TA获得超过1032个赞
知道小有建树答主
回答量:330
采纳率:0%
帮助的人:375万
展开全部
可以存放多个字符串,但要知道每个字符串的起始地址,比如
#include<stdio.h>
int main()
{
char ms[]={'a','b','c','\0','1','2','3','\0','X','Y','Z','\0'};
printf("%s\n%s\n%s\n",ms,ms+4,ms+8);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
YN天会
2012-06-14
知道答主
回答量:30
采纳率:0%
帮助的人:20.7万
展开全部
二维数组可以放很多。
更多追问追答
追问
我是指一维数组,是可以存很多,但是无法输出,是这样吗?
追答
字符数组一个元素就是一个字符,可以全部输出。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-06-14
展开全部
是啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式