若有定义“int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;”,则数值不为3的表达式是
A.x[3]
B.p1=x+3,*p1++
C.p1=x+2,*(p1++)
D.p1=x+2,*++p1
C,
C选项*(p1++)时运算时的p1为x+2,然后输出*(x+2),这个语句运行完之后p1变成了x+3
B选项时*p1++中,先算*p1的结果,即为3,然后3++,但是此时是输出3,再++
D选项中*++p1相当于*(++p1),先p1++即p1 = x+3,然后*(x+3)
选C p1=x+2,*(p1++) p1=&x[2]= 2 后 ++
A x[3] =3;
B p1=x+3,*p1++ p1=&x[3] =3 后 ++
D p1=x+2,*++p1 p1=&x[2] ++ 在前 *++p1 =3