笔试小题

对于以下变量定义,以下表达式正确的是:( )
struct node{
              char s[10];
              int k;
}p[4];
A.p->k=2
B.p[0].s="abc"
C.p[0]->k=2
D.p->s='a'

解答: 

这个题里,p是指针,指向p[0]的首地址,p->k=2即*p.k=2,即p[0].k=2

A是正确的;
B错,只有在声明字符数组的时候才能将一个字符串赋给数组。如:char a[5] = "abc";而char a[5]; a="abc";这种写法是错的。
C错,p[0]不是指针,不能用->。
D错,不能将一个 const char 类型的字符 'a' 赋给 数组 s。
posted @ 2014-09-07 13:31  艾丽娅的猫  阅读(272)  评论(0编辑  收藏  举报