下列选项中正确的语句是A.char s[8]; s={"Beijing"};B.char*s; s ={"Beijing"};C.char s[8]; s="

题目

下列选项中正确的语句是

A.char s[8]; s={"Beijing"};

B.char*s; s ={"Beijing"};

C.char s[8]; s="Beijing";

D.char *s; s ="Beijing";

参考答案和解析
正确答案:D
解析:本题考核的知识点是字符欺组初始化及字符型指针的应用。字符数组初始化可以有两种方式:方式一,按单个字符的方式赋初值。方式二,把一个字符串作为初值赋给字符数组。比如:charch[5]=rabc”),选项A属于这种情况,但是选项A定义的字符数组长度为8,由于最后还要加一个“\0”做结束标志,所以赋给他的字符串长度应小于等于7,所以选项A不正确;在给字符数组赋初值的时候,应该用花括号“{”和“}”将字符串括起来,故选项C不正确。将字符型指针变量指向字符串也有两种方法,一是在定义指针变量时就给其赋初值,比如:char*p="student";二是给指针变量赋值,比如:p="student";(p已经被定义为字符型指针变量;),故选项D正确,而选项C中的花括号是多余的,应该去掉,所以,4个选项中选项D符合题意。
更多“下列选项中正确的语句是A.char s[8]; s={"Beijing"};B.char*s; s ={"Beijing"};C.char s[8]; s=" ”相关问题