请问这个y*=*(ptr+x)是啥意思

2:int (*r)[2] 解释为:声明一个指针r这个指针是个什么样的指针呢?是一个指向一个数组的指针这个数组是个什么样的数组呢?是一个包含了两个元素并且元素为int型的数组。於是r连起念就是:r为一个指向了数组元素个数2个类型为int型的数组指针。

3:你程序中r++多余了,因为上面有句r=a+i;即使r++之后也会被r=a+i;重新赋值嘚。

4:r=a;a是一个三行两列的数组a:意思是这个数组的起始地址,也就是第一个元素的地址第一个元素为a数组的第一行。举个例子:

5:如果想得到2这个数值怎么得到a[0][1],这个是最简单的方法。

*(a[0]+1):a为{12}地址,a[0]则是取得了这个{12}数组(注意:此时已经为一维数组了)的地址,a[0]+1:則是取得了2这个地址

6:运行下面的程序看下:

(*r)[2]是指定义了一个指针r它指姠的内容是一个含2个变量的数组。

数组在内存区中式连续存储的故而r执行r=a+i后,*r就是a[i]一个含两个数的数组。

这里a可以看做一个指针它指向a这个数组的开头位置。

后面的内容想必楼主没什么问题了我就不说了。

我要回帖

更多关于 (x+y)? 的文章

 

随机推荐