C-查找由malloc函数分配的大小



可能的重复:
查询分配块的大小的任何功能?
仅使用返回的指针

才能获得Malloc的大小

让我们说,我让用户使用malloc函数指定要传递给int *x的字节数。有没有办法确定分配给整数的字节的实际数量?

没有便携式方式。语言标准没有提供任何方法。

每个实现都需要跟踪malloc ED内存的大小,以某种方式能够正确地free IT,因此它可以提供一种获取该信息的手段。在GLIBC的malloc.h中,有一个原型

size_t malloc_usable_size(void *);

允许您以分配给传递指针的可用字节数量,但通常比malloc调用中要求的字节数大。其他实现可能会提供其他方法来获取这种信息。

相关内容

  • 没有找到相关文章

最新更新