观看在互联网上找到的一些代码,我遇到了这段代码:
int (*p)[3];
p = (int(*)[3]) calloc(5*3,sizeof(int));
它只是一种分配矩阵的方法吗?
我知道这int (*p)[3]
会创建一个指向 3 int 数组的指针,但我不确定calloc
调用:我知道calloc
分配和初始化int
(在本例中)等于第一个参数 ( 5*3
) 的数量。
因此,如果我将它分配给p
它应该意味着指针现在指向刚刚分配的内存位置。
所以,既然我知道我的推理是错误的,有人可以纠正我吗?