已知有数组定义 char a[3][4]; 下列表达式中正确的是( )。

admin2021-06-10  56

问题 已知有数组定义
    char a[3][4];
    下列表达式中正确的是(    )。

选项 A、a[0]="AAA"
B、strcpy(a[1],"BBBBB")
C、a[2][1]="CC"
D、a[1][1]=a[1][1]

答案D

解析 程序定义一个3行4列的二维字符数组。由于是二维数组,所以a[0]代表一维数组,数组是不能直接赋值的,A错误;由于是二维数组,a[1]代表数组a的第二行行地址,可以使用strcpy函数赋值,但是a[1]只有4个字节大小的空间,而字符串“BBBBB’’占6个字节,拷贝越界,B错误;同B情况一样,a[2][1]只有1个字节空间,“CC”占3个字节,无法完成赋值,c错误;D选项是对a[1][1]完成自我赋值,正确;答案为D。
转载请注明原文地址:https://kaotiyun.com/show/ljfp777K
0

最新回复(0)