【发布时间】:2015-06-30 07:00:51
【问题描述】:
我知道 calloc 分配内存并向每个单元格写入零,所以我的问题是: 使用 calloc 或使用 malloc 并在向它们写入 NULL 的单元格上运行有区别吗? calloc 的零是否等价于 NULL?
【问题讨论】:
-
NULL可能不会以0(所有位均为0) 作为表示形式。 -
这里实现的一些有趣问题 - locklessinc.com/articles/calloc
-
@BrianAgnew 为什么文章中的 OP 不简单地检查溢出:
n > SIZE_MAX/size -
@2501 - 我不知道。也许他们只是为了文章的目的而简洁
-
什么“细胞”?分配的内存
malloc和calloc可用于存储任何类型的对象。您是否假设分配的空间将用于存储指针值?
标签: c null dynamic-memory-allocation calloc