首页 > 解决方案 > sizeof Calloc 产生错误的输出

问题描述

我创建了一个 calloc 对象:

char* i2s_read_buff = (char*) calloc(1024*16, sizeof(char)); 

我从 calloc 的定义中了解到,它将创建 1024*16 个元素的数组,每个元素为 1 个字节。所以它应该是一个1024*16/8 = 2048字节数组。

sizeof(i2s_read_buff)

产生输出4。我期待2048作为输出。

有人可以解释这里发生了什么吗?

标签: arrayscmemorycalloc

解决方案


推荐阅读