下列语句中正确的是()A)char *s;s=”Olympic”;……

A)char*s;s=”Olympic”;B)chars[7];s=”Olympic”;C)char*s;s={”Olympic”};D)chars[7];s={”Oly... A)char *s;s=”Olympic”; B)char s[7];s=”Olympic”;
C)char *s;s={”Olympic”}; D)char s[7];s={”Olympic”};
求好心人帮忙解释一下尤其是错误选项错在哪里了!!!
展开
 我来答
郁草小沙弥
2012-08-14 · TA获得超过484个赞
知道小有建树答主
回答量:203
采纳率:66%
帮助的人:64万
展开全部
A正确.B和D项错误原因:数组的整体赋值(其实准确的说这是初始化,数组是不能整体赋值的)只能在定义语句里char s[7]=”Olympic”;或者char s[7]={”Olympic”};其它情况下只能单个赋值,如s[0]='O';s[1]='l'; C项{”Olympic”}这种写法是给数组初始化时的用法,这里的s是指针只能写成A那种. 值得一提的是B项,数组名s也能作为数组首指针来用,但是它不同于一般的指针,无法像A中那样写为s=”Olympic”
kingfeng588
2012-08-14 · TA获得超过2494个赞
知道大有可为答主
回答量:1475
采纳率:50%
帮助的人:1934万
展开全部
A正确.
B、这里是数组,数值要么定义时出示化(char s1[7]="Olympic";这里7太小,应该大于字符串长度或者不写长度),要么单个元素初始化,要么内存拷贝.这里把数组的指向了一个静态区的地址,所以错误.
C、不需要花括号。
D、错误很明显,B、C错误都有。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
很路人
2012-08-14 · TA获得超过155个赞
知道小有建树答主
回答量:139
采纳率:0%
帮助的人:122万
展开全部
A是对的,B中s的大小不够,C中s是指针,实际大小只有4,只够存放地址,D也是大小不够。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
暴躁的少英白木
2012-08-14 · TA获得超过142个赞
知道答主
回答量:118
采纳率:0%
帮助的人:62.7万
展开全部
为什么感觉没有正确的答案。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式