我刚刚得到了找出这段代码是如何工作的任务。
int array[rows][coloums];
int *pointerArray[rows];
for (int i = 0; i < rows; i++) {
pointerArray[i] = array[i];
for (int j = 0; j < coloums; j++) {
*(pointerArray[i] + j) = 0;
}
}
我很感兴趣的是 *(pointerArray[i] + j),我认为它与 pointerArray[i][j] 相同,因为您可以通过两种方式访问元素,但是谁能告诉我什么是实际发生在 *() 上?就像编译器如何知道我要求与 pointerArray[i][j] 相同的内容?
感谢您的回答!