【发布时间】:2010-04-19 21:24:01
【问题描述】:
我有以下代码:
int main() {
int n = 3, m = 4, a[n][m], i, j, (* p)[m] = a;
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
a[i][j] = 1;
p++;
(*p)[2] = 9;
return 0;
}
我很难理解这里的 p 是什么,以及最终对 p 的操作的后果。有人可以简要解释一下发生了什么。我知道 c 指针的简单设置,但这里稍微复杂一些。
【问题讨论】:
-
@Paul 考虑阅读meta.stackexchange.com/questions/34503/…
-
嗯,这是一个使用 Java(和一些基本的 C)进行介绍性编程的小组工作的练习。我其实是这门课的助教,但是我的 C 比我的 Java 生疏多了,所以我只是在做这门课的最后准备。
标签: c arrays pointers multidimensional-array