当前位置: > 请解释一下C语句"char a[10],p;p=a=“china”"的含义....
题目
请解释一下C语句"char a[10],p;p=a=“china”"的含义.
下列说明不正确的是:
(A)char a[10]=“china” (B)char a[10],p=a;p=“china” (C)char p;p=“china”(D)char a[10],p;p=a=“china”;

提问时间:2020-11-03

答案
char a[10], *p;
p = a = "china";
是错的赋值!~
原因:
char *p;
p = "china";
这里的p是在静态区分配的内存,也就是说p是指向字符常量的指针.
而在p = a = "china";中,"="运算符是从右向左结合的,所以是将"china"的首地址赋值给a,而a是char型数组的首地址,这是把字符常量的地址赋值给字符变量,所以错误!~
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
1,人们染上烟瘾,最终因吸烟使自己丧命.
版权所有 CopyRight © 2012-2019 超级试练试题库 All Rights Reserved.