作业帮 > 综合 > 作业

int array[]={2,3,5,21,47,56},*pa=array,h; h=++(*++pa); 变量h和*

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/17 04:03:56
int array[]={2,3,5,21,47,56},*pa=array,h; h=++(*++pa); 变量h和*pa的值是:
为什么?
int array[]={2,3,5,21,47,56},*pa=array,h; h=++(*++pa); 变量h和*
变量h和*pa的值都是4
++(*++pa)这个可以简单的这么看:
++(array[1])
将pa指向的地址向后移一个单位的偏移量,并将其指向的值++后,返回给h
pa指向的地址向后移一个单位的偏移量,pa指向array[1],再将array[1]的值自增1后返回给h
所以pa还是指向array[1],但是array[1]的值变为了4