都是空指针类型:void*,需要在前面指定要转换的指针类型
malloc
malloc 用于分配指定大小的连续内存块。它不会对分配的内存进行初始化。
void* malloc(size_t size);
size: 指定要分配的内存大小(以字节为单位)。
返回值: 成功分配内存时返回指向分配内存的指针,如果内存分配失败则返回 NULL
何时使用 malloc
当你只需要分配一块内存,并且不需要对内存进行初始化时。
当你明确知道 所需内存的大小,并且不介意内存中可能存在的随机数据时。
calloc
calloc 用于分配指定数量的连续内存块,并将这些内存块的所有字节初始化为零。
void* calloc(size_t num, size_t size);
num: 指定要分配的元素数量。
size: 指定每个元素的大小(以字节为单位)。
返回值: 成功分配内存时返回指向分配内存的指针,如果内存分配失败则返回 NULL。
何时使用 calloc
当你需要分配一系列相同大小的内存块,并希望它们被初始化为零时。
当你需要确保分配的内存块中没有任何未定义的数据时。
1137

被折叠的 条评论
为什么被折叠?



