问题 单项选择题

设有int a[]=10,11,12,*p=&a[0];,则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是( )

A.10,11,12
B.11,12,12
C.10,12,12
D.11,11,12

答案

参考答案:C

解析: "++"和"*"具有相同的优先级别,运算时都是采用自右向左结合运算的方式。"*p++"在运算时先运算"*p"再运算"p++"。在运算"*p+=1"时,P已做过一次自加1运算,而"*"运算的优先于"+-"运算;故"*p+=1"等同于a[2]+=1。

单项选择题
多项选择题