【问题标题】:Is the term "libc" equivalent to "C standard library"?术语“libc”是否等同于“C 标准库”?
【发布时间】:2011-07-28 08:23:43
【问题描述】:

我有时听到人们交替使用术语“libc”和“C 标准库”。我知道“libc”是许多流行的 C 标准库实现的名称(或名称的一部分)。我的猜测是,由于这些实现的广泛使用,人们开始将 C 标准库统称为“libc”,尽管它不是正式名称。

将C标准库称为“libc”是否正确?

【问题讨论】:

    标签: c terminology standard-library libc


    【解决方案1】:

    我一直认为“libc”恰好是许多流行的 C 标准库实现的名称(或名称的一部分)。

    这是正确的。 "libc" 是 C 标准库的一些 实现的名称。

    作为未命名为“libc”的 C 标准库实现示例,Microsoft C 标准库实现是通常称为“CRT”的"C Run-Time Libraries," 的一部分。

    将C标准库称为“libc”是否正确?

    C 标准库未命名为“libc”,因此使用该术语泛指它(而不是特定实现)是不正确的。也就是说,在大多数情况下,如果您确实使用术语“libc”来指代 C 标准库,您仍然可能会被理解。

    【讨论】:

    • 谢谢,但您的回答仍然有可能 libc 既是官方名称又是多个实现使用的名称。使用“libc”来引用通用C标准库是否正确?我相信你的意思是不,但我只是想确定一下。
    • @pepsi:C 标准库未命名为“libc”,因此使用该术语泛指它(而不是特定实现)是不正确的。也就是说,在大多数情况下,如果您确实使用术语“libc”来指代 C 标准库,那么您仍然可能会被理解。
    • 谢谢。这正是我想澄清的
    • 我认为将 C/POSIX/其他操作系统实现的库部分称为“libc”是相当标准和合理的,无论它的文件名(或者它是否有文件名)在具体实现。
    【解决方案2】:

    “libc”确实是实现的名称。它通常包含不属于 C 标准的函数,并且可能 包含 属于 C 标准的函数。 (后者的常见情况是标准 C 数学函数被拆分为单独的“libm”。)

    【讨论】:

      【解决方案3】:

      LibC (http://www.gnu.org/s/libc/) 是 C 库标准 (http://en.wikipedia.org/wiki/C_standard_library#ISO_Standard) 的一种特殊实现。

      【讨论】:

        【解决方案4】:

        'libc' 指的是 C 标准库。但是,libc 有几个实现:

        • glibc:为 GNU 项目编写的 libc 实现
        • klibc : libc 的简约子集实现
        • ...

        【讨论】:

          猜你喜欢
          • 2021-09-04
          • 1970-01-01
          • 2023-04-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-04-08
          • 2010-11-13
          • 1970-01-01
          相关资源
          最近更新 更多