c - "c"中的第一个 "calloc"代表什么?

标签 c malloc libc calloc c-standard-library

一个学生问了这个问题,我不确定。

猜测包括:“计数”、“清除”、“分块”、“完成”、...

标准库文档没有说明它代表什么,也没有类似命名的函数来指示模式。有谁知道实际的词源并且可能有权威引用来支持它?

最佳答案

根据本书摘录Linux System Programming (由 Robert Love 撰写),关于 calloc 的词源不存在任何官方来源。


一些似是而非的候选人似乎是:

  1. Countcounted,因为 calloc 采用单独的计数参数。
  2. Clear,因为它确保返回的内存块已被清除。

    • 据报道,Brian Kernighan 相信“c”代表clear(尽管他承认他不确定)。
    • (查看评论。) 早期 calloc.c似乎在源代码注释中包含对单词 clear 的明确引用(但没有引用单词 count 或任何其他候选词)。在文件 malloc.c 的另一个源代码注释中, clear 一词再次出现,引用了 calloc 一词。
  3. C,如 C 语言。

    • (请参阅 alk's answer 和评论。) 可能是大约同时引入的一组函数的命名约定。

关于c - "c"中的第一个 "calloc"代表什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31888422/

相关文章:

关闭优化时 C 库崩溃

c - 运行程序出现奇怪的东西

c - strcmp 和 __strcmp_sse2_unaligned 之间的区别

c - double free 错误释放 1000 字节

c - libm 的用途是什么?

c - UART DMA Tx/Rx 架构

c - mlt XML 和 C 接口(interface)中的不一致呈现以及 'hold' 生产者和 avformat 消费者

c++ - 标准数字输入

c - 错误 : invalid use of undefined type struct in C

c++ - 尝试链接到我使用 LD_PRELOAD 创建的共享库时出错