【发布时间】:2015-10-16 06:50:31
【问题描述】:
假设我有一个 char** "bob",我将其 malloc 形式为
char **bob = malloc(10 * sizeof(bob[0]));
对于我存储在 bob 下的每个元素,我会以
的形式分配一定数量的空间bob[num] = malloc(10);
我的问题是,你只能在 bob 下 malloc 元素达到你 malloc char** 本身的数量吗?
即如果 bob[num] = malloc(10); 重复 5 次,我们总共分配了 50 个字节 - 因为这超过了原始的 10 * sizeof(bob[0])(其中 malloc 40),这会导致程序搞砸吗?
或者你 malloc 到 char** 下的元素的内存量不受分配给 char** 本身的内存限制?
【问题讨论】:
标签: c arrays pointers memory-management