对C中指针的困惑

shr*_*3jn 0 c arrays pointers

我正在学习C,现在我对指针感到困惑.我的问题是,为什么不printf("%d",*(i)); 使用多维数组时返回元素而不是地址?

#include <stdio.h>

int main()
{
    int i[2][2] = {{1,8},{2,9},{3, 4}};
    //int i[2] = {1,2,3};
    printf("%d", *(i));
    printf("\n%d", i);
}
Run Code Online (Sandbox Code Playgroud)

Meh*_*dad 6

好吧,它是一个数组数组,所以索引/解引它一次会给你一个数组,它会衰减到一个指针......