C语言的问题
C语言的问题下列选项中正确的语句组是().A:chars[8];s={"Beijing"};B:char*s;s={"Beijing"};C:chars[8];s="Be...
C语言的问题下列选项中正确的语句组是().
A:char s[8]; s={"Beijing"};
B:char *s; s={"Beijing"};
C:char s[8]; s="Beijing";
D:char *s; s="Beijing";
选D?其他哪错了 展开
A:char s[8]; s={"Beijing"};
B:char *s; s={"Beijing"};
C:char s[8]; s="Beijing";
D:char *s; s="Beijing";
选D?其他哪错了 展开
1个回答
展开全部
1、关于A:char s[8]; s={"Beijing"}; s被定义为char数组,数组名不能被赋值,所以A错,而且{}只能用在初始化中,这个错上加错。
2、关于B:char *s; s={"Beijing"}; s被定义为char指针,它可以指向一个变量,但是{}只能用在初始化中,而且{"Beijing"}代表的是一个字符串数组,即使在初始化中这样给s赋值也是错误的。
3、关于C:char s[8]; s="Beijing";同样s被定义为一个数组,数组名不能被赋值,所以C错。
4、关于D,虽然它也能通过编译,但事实上,这种赋值也是一种带擦边球性质的,但至少它在某些编译器中是能够通过编译的,所以这个题只有D勉强算对。
2、关于B:char *s; s={"Beijing"}; s被定义为char指针,它可以指向一个变量,但是{}只能用在初始化中,而且{"Beijing"}代表的是一个字符串数组,即使在初始化中这样给s赋值也是错误的。
3、关于C:char s[8]; s="Beijing";同样s被定义为一个数组,数组名不能被赋值,所以C错。
4、关于D,虽然它也能通过编译,但事实上,这种赋值也是一种带擦边球性质的,但至少它在某些编译器中是能够通过编译的,所以这个题只有D勉强算对。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询