做什么:malloc(10)和malloc(10*sizeof(int))

  • 本文关键字:malloc sizeof int malloc
  • 更新时间 :
  • 英文 :


malloc(10)是否分配10个字节的内存?malloc(10 * sizeof(int))分配40个字节的内存?

就代码可用的内存而言,假设目标系统上的sizeof(int)为4,则两个答案都是"是"。但是,适用了两个其他考虑:

  • malloc使用少量内存来解释其分配给程序的块,从而导致某些依赖于实现的间接费用
  • 内部malloc可以分配比代码要求更多的内存。尽管您的代码无法使用附加的内存,但对于进一步的分配而言,它变得不可用。

当您多次致电malloc时,这将变得很重要:例如,当您致电malloc(10) 1,000,000次时,与预期的10MB malloc的高架相比,可用内存的数量可能会降低几个额外的兆字节。

相关内容

  • 没有找到相关文章

最新更新