#1642. c语言7.12 验证二位数组地址表达形式

c语言7.12 验证二位数组地址表达形式

问题描述

int main(){
int a[3][3]={1,2,3,4,5,6,7,8,9};
printf("行地址a:%p\n",a);//打印第0行首地址
printf("数组的地址&a:%p\n",&a);//打印数组的地址,值和a相同
printf("列地址*a:%p\n",*a);//打印第0行第0列的地址,结果同上
printf("列地址a[0]:%p\n",a[0]);/*打印第0行第0列的地址,结果同上*/
printf("列地址*(a+0):%p\n",*(a+0));//打印第0行第0列的地址,结果同上
printf("数组后的地址&a+1:%p\n",&a+1);/*打印整个数组下一个位置的地址*/
printf("列地址*a+1:%p\n",*a+1);/*打印第0行第1列的地址 */
printf("列地址a[0]+1:%p\n",a[0]+1);//打印第0行第1列的地址
printf("列地址*(a+0)+1:%p\n",*(a+0)+1);//打印第0行第1列的地址
printf("行地址a+1:%p\n",a+1);//打印第1行的地址
printf("列地址&a[2][1]:%p\n",&a[2][1]);/*打印第2行第1列的地址*/
printf("列地址a[2]+1:%p\n",a[2]+1);//打印第2行第1列的地址
printf("列地址*(a+2)+1:%p\n",*(a+2)+1);//打印第2行第1列的地址
printf("元素a[2][2]:%d,%d,%d\n",a[2][2],*(a[2]+2),*(*(a+2)+2)); /*打印元素a[2][2]的值*/
}

格式

输入

输出

行地址a:0062feac 数组的地址&a:0062feac 列地址a:0062feac 列地址a[0]:0062feac 列地址(a+0):0062feac 数组后的地址&a+1:0062fed0 列地址a+1:0062feb0 列地址a[0]+1:0062feb0 列地址(a+0)+1:0062feb0 行地址a+1:0062feb8 列地址&a[2][1]:0062fec8 列地址a[2]+1:0062fec8 列地址*(a+2)+1:0062fec8 元素a[2][2]:9,9,9

样例


行地址a:0062feac
数组的地址&a:0062feac
列地址*a:0062feac
列地址a[0]:0062feac
列地址*(a+0):0062feac
数组后的地址&a+1:0062fed0
列地址*a+1:0062feb0
列地址a[0]+1:0062feb0
列地址*(a+0)+1:0062feb0
行地址a+1:0062feb8
列地址&a[2][1]:0062fec8
列地址a[2]+1:0062fec8
列地址*(a+2)+1:0062fec8
元素a[2][2]:9,9,9

提示

数据范围、额外说明、样例说明等等