0

例如 t[i]*(t+i)

它将如何 t[i][j]

在我看来 *(*(t+i)+j),但不确定。

4

3 回答 3

2

是的,你所拥有的是正确的。t[i][j]可以写成(t[i])[j],因此您可以递归地应用“一维”规则。

于 2013-04-07T11:07:14.780 回答
0

您必须知道数据是如何存储在内存中的,因为您想对指针进行操作。对于二维数组,没有显着差异——“行”只是告诉应用程序应该跳过多少个“单元”。

让我们假设一段时间,这t是一个整数,所以当你有一个数组时,它看起来像这样:

|3|4|5|

|6|5|4|

它看起来,实际上就像

|3|4|5|6|5|4|

存储在内存中。数组意味着程序必须在数组中的第三个值之后“跳过” x[3][2],然后t[i][j]看起来像*(*(t+i)+j)

于 2013-04-07T11:11:24.017 回答
0

你是对的。t[i][j]相当于*(*(t + i) + j)

于 2013-04-07T11:25:04.137 回答