首页 文章

如何动态(使用malloc或calloc)分配内存? [重复]

提问于
浏览
1

可能重复:确定有关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

2 回答

  • 2

    不,没有办法找到指针所指的内存量 .

    至少不在任何系统上,所以没有便携方式 .

  • 3

    不是 . 在没有使用存储分配大小的额外数据的情况下 .

相关问题