
C语言选择题,求详解
设chara[5],*p=a;,下面选择中正确的赋值语句是()。A.p=“abcd”;B.a=“abcd”;C.*p=“abcd”;D.*a=“abcd”;...
设char a[5],*p=a;,下面选择中正确的赋值语句是()。
A.p=“abcd”; B.a=“abcd”; C.*p=“abcd”;
D.*a=“abcd”; 展开
A.p=“abcd”; B.a=“abcd”; C.*p=“abcd”;
D.*a=“abcd”; 展开
2个回答
展开全部
选项A是正确的。
解释如下:
p是字符串指针,它是一个变量,可以被赋值,指向新的地址。
a[5]是一个字符串,a指向这个字符串的首地址,而且它是一个常量,除了初始化的时候能赋值之外,不能再被赋值了。
*p是取到指针p的地址的值,*a是取得字符数组a[5]的首地址的值,这两个都是int型,后面的字符串也根本无法给它们赋值。
解释如下:
p是字符串指针,它是一个变量,可以被赋值,指向新的地址。
a[5]是一个字符串,a指向这个字符串的首地址,而且它是一个常量,除了初始化的时候能赋值之外,不能再被赋值了。
*p是取到指针p的地址的值,*a是取得字符数组a[5]的首地址的值,这两个都是int型,后面的字符串也根本无法给它们赋值。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询