C++ Primer学习中,解引用 *p报错:非法的间接寻址

auto 类型取数组地址,解引用时报错,帮忙看看
代码

int main(void) {
    int ia[3][4] = { 11,12,13,14, 21,22,23,24,31,32,33,34 };

    for (auto p = ia;p != ia + 3; ++p)
    {
        for (auto q = *p; q != *p + 4;++q)
        {
            //int i = *q;
        }
    }    
}

代码及报错 如下图所示:

img

书中内容如下图所示:

img

IDE : Visual Studio 2019

这是C11新标准提出的,是不是你这个编译器还不支持C11 啊

我又查了一下,问题或许不在对p解引用(p)上。
我对p添加监视,发现*p的类型不是指针,而是 int.

所以,为什么不是如书中描述的那样:auto p = ia; 等价于 auto p = &ia[ 0 ];

img