问题 单项选择题

设有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。

单项选择题
名词解释