合法的数组定义是() A.int a[]={“string”};

2025-06-26 01:14:55
推荐回答(5个)
回答1:

D正确,
A,声明的是int类型的数组,初始值却是字符串"string"肯定是错的
B,声明的是长度为5的int数组,后面的初始值给的是6位,肯定是不对的啦
C,道理同A
D,char类型和int类型是能隐式转换的,0,1,2,3,4,5都分别对应一个char类型的符号,所以是正确的。

回答2:

答案是D。
A:int型的数组,却赋给它字符串型,是不对的。
B:int型的数组,a[5]表示有5个数据,但是赋值的却有6个值,故错误,内存溢出。
C:char a表示字符型的变量,不是数组,而且赋给它字符串型的也不对。
D:a[]有6个值,0,1..也是字符。故正确。

回答3:

A错误,数组内容为字符串而非字符
B错误,初始化数量超出预定义数量
C错误,语法错误
只有D了...,虽然D中初始化的不是字符,但是存在整数与字符的隐式转换!

回答4:

A.int a[]={“string”}; int 不能为字符串
B.int a[5]={0,1,2,3,4,5}; 下标溢出
C.char a={“string”}; char 不能为字符串 只以是字符
D.char a[]={0,1,2,3,4,5} 也就只有这个对了!

回答5: