问题 单项选择题

下列选项中正确的语句是( )。

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

B.char*s:s={Bei jing");

C.chars [8]: s="Bei jing"};

D.char*s:s="Bei jing";

答案

参考答案:D

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

选择题
单项选择题