为什么?
z[1][1]
作品?
z
是指向指针的指针
int
在里面
w
数组。解引用
*z
会给你第一个指针
int
在里面
{1,5}
又一次失去信心
**z
会给你的
int
,这就是
1
. 这和做
z[0][0]
或
*(*(z + 0) + 0)
.
Z〔1〕〔1〕
与
*(*(z + 1) + 1)
. 解引用
*(z + 1)
会给你第一个
int
在第二个数组中
{3,6}
. 递增
*(z + 1) + 1
会给你第二个
int
在第二个数组中
{3,6}
,取消引用
*(*(Z+1)+1)
会给你真正的秒数
int
第二阵的
{3,6}
,在你的情况下是
6
;
为什么?
**z[1][1]
不起作用?
用
Z〔1〕〔1〕
会给你一个
int
(见上文)
六
在你的例子中。所以当你试图取消引用
int
,更不用说两次了?一个错误!
为什么?
*w[1]
作品?
W
是指针数组。用
w[1]
从数组中得到第二个指针,它指向2的数组
int
S
{3,6}
. 如果你取消引用,你将得到第一个
int
在你的情况下
3
.
为什么结果是
*W〔1〕
与结果相同
*z[1]
?
让我们想象一下:
{1,5} {3,6}
| |
{w[0], w[1]}
| |
z z+1
数组
W
是2个指针的数组
int
这些都是
w[0]
和
W〔1〕
.
W〔1〕
是指向
int
在那个阵型里。这个
int
它指向是
三
.
Z
是指向指针的指针
int
,或者在本例中指向
W [ 0 ]
,这是指向
一
.
z[1]
与
*(z+1)
它使
Z
在解引用结果之前指向下一个指针,在本例中是
W〔1〕
,它指向
三
. 取消对两者的引用
W〔1〕
和
Z〔1〕
产生相同的结果,因为它们最终都指向相同的
int
,这就是
三
.