定义 char s[ ]="Hello";与( )等价? A. char s[4]="Hello"; B. char *s="Hello";

C. char s[ ]={'H','e','l','l','o','\0'}; D. char s[ ]; s="Hello";

下列语句中,能正确进行字符串赋值或赋初值的是( )?
A. char a[5]={'h','e','l','l','o'}; B. char s[5]="hello";
C. char s[5]; s="hell"; D. char *s;s="hello";

对两个静态数组A和B进行如下初始化:
static char A[ ]="ABCDEF";
static char B[ ]={'A','B','C','D','E','F'};
则下列叙述正确的是( )?
A. A和B完全相同 B. A和B只是长度相等
C. A和B不相同,A是指针数组 D. A数组长度比B数组长

第1个回答  推荐于2017-10-06
1定义 char s[ ]="Hello";与( )等价?
A. char s[4]="Hello"; B. char *s="Hello"; C. char s[ ]={'H','e','l','l','o','\0'}; D. char s[ ]; s="Hello";
分析:首先s的长度是6,系统自动加上'\0'结尾符号;
A存在数组越界, B只是定义一个指向"Hello"的指针, D char s[ ];错误分配数组内存时候 必须有长度。 C对。

2:C. char s[ ]={'H','e','l','l','o','\0'}; D. char s[ ]; s="Hello";

下列语句中,能正确进行字符串赋值或赋初值的是(A.D)?
A. char a[5]={'h','e','l','l','o'}; B. char s[5]="hello";
C. char s[5]; s="hell"; D. char *s;s="hello";
这个是数组赋值问题 B:s长度为6,存在越界问题。
C 估计是结尾符号的问题。 D;

3:D本回答被提问者采纳
第2个回答  2011-07-09
1.C
2 B
D
第3个回答  2011-07-09
s1[2]=

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网