如何获得的大小动态(使用malloc或释放calloc)已分配的内存? [重复](How to

2019-08-01 07:19发布

可能重复:
确定在C动态分配的存储器的大小
有关的malloc和sizeof新手问题
我如何从一个在C指针得到一个数组的大小?

的malloc - >多少内存已被分配?

int **arrofptr;
arrofptr = (int **)malloc(sizeof(int *) * 2);
arrofptr[0] = (int *)malloc(sizeof(int)*6144);
arrofptr[1] = (int *)malloc(sizeof(int)*4800);

现在我已经知道了多少字节arrofptr分配,arrofptr [0],arrofptr [1]? 有没有办法知道的大小?

如果我们将打印

sizeof(arrofptr);
sizeof(arrofptr[0]);
sizeof(arrofptr[1]);

然后它会打印4

Answer 1:

没有,有没有办法找到一个指针多少内存参照。

至少不会在任何系统,所以没有可移植的方法。



Answer 2:

不,不是不使用存储分配的大小额外数据的地方。



文章来源: How to get the size of dynamically (using malloc or calloc )allocated memory? [duplicate]
标签: c size malloc