标签: c arrays pointers
据我所知:
int B[2][3]; int* p=B;
不起作用,因为B不是指向int的指针,而是指向3个int的数组的指针。但它与B仍然指向数组中的第一个元素(即int)的事实并不矛盾。那么为什么* p或* B不包含B [0] [0]的值?
如何能成为指向"一系列整数的指针"?指针只能指向内存中的单个地址,而不能指向所有3个地址。因此,B应始终指向第一个元素所在的地址,与存储块的长度无关。
请解释为什么我的推理不起作用,因为我很难过 完全理解它。感谢。