问题
单项选择题
以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是( )。
A.char s[10]=="abcdefg";
B.char t[]="abcdefg",*s=t;
C.char s[10];s="abcdefg";
D.char s[10];strcpy(s,"abcdefg");
答案
参考答案:C
解析: 选项A中定义了一个字符型数组并使用字符串常量给它赋初值,故选项A正确。选项B定义了一个字符型数组t并初始化,然后定义了一个指针变量s并让它指向t,故选项B正确。选项C先定义了一个长度为10的字符型数组,然后再给它赋值,这时应该分别给数组中的每个元素赋值,故选项C不正确;选项D中先定义了一个长度为10的字符型数组s,然后通过字符串复制函数将字符串“abcdefg”赋值给它,选项D正确。所以,4个选项中选项C符合题意。