以下语句或语句组中,能正确进行字符串赋值的是( )。

admin2013-06-11  17

问题 以下语句或语句组中,能正确进行字符串赋值的是(  )。

选项 A、char  *sp;  *sp="right!";
B、char  s[10];  s="right!";
C、char  s[10];  *s="right!";
D、char  *sp="right!";

答案8

解析 在选项A中,首先定义了一个字符指针sp,然后将个字符串赋给甲所指的地址,这是错误的。因为sp是一个未经初始化的野指针,不知其指向哪儿,往一个不确定的地址中写数据很容易让程序出错。选项B首先定义了一个字符数组,然后将一个字符串赋给数组名,这是错误的。因为数组名是一个指针常量,不可以被改变。选项C首先定义了—个字符数组,然后将—个字符串赋给数组的第一个元素,这也是错误的。因为字符串在表达式中相当于一个常字符指针,将一个指针值赋给一个字符型变量是行不通的。选项D是定义一个字符指针sp,同时使其指向一个字符串常量,即将个常字符型指针赋给sp。这是可行的。所以,4个选项中选项D符合题意。
转载请注明原文地址:https://jikaoti.com/ti/szn0FFFM
0

最新回复(0)