需要动态内存字节

时间:2014-04-04 13:05:27

标签: c arrays malloc byte

动态创建4 x 3 x 3双精度数组所需的内存总量(以字节为单位)是什么?

我知道答案是356,但根本不明白额外字节的来源。里尔有帮助吗?

2 个答案:

答案 0 :(得分:2)

所以@ user4815162342说,你需要至少288个字节用于双打,但是他/她没有说17个指针的额外68个字节。这使得356个字节。 32位整数假定为指针。
1.你需要一个指向整个数组的指针 2.然后在第二维上有4个指针 3.最后关于第三维的12个指针。

答案 1 :(得分:1)

答案因平台而异,也可能取决于之前分配的数量和性质。因此你知道的答案是"在某些情况下几乎肯定是不正确的。

答案保证是正确的,所需的内存量是" 至少 4*3*3*sizeof(double)字节",在大多数现代平台上是288。