11

I sometimes hear people using the terms "libc" and "C standard library" interchangeably. I understand that "libc" is the name (or part of the names) of many popular C standard library implementations. My guess is that because of the widespread use of these implementations, people started referring to the C standard library in general as "libc" although it is not an official name.

Is it correct to refer to the C standard library as "libc"?

4

4 回答 4

12

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

这是对的。“libc”是 C 标准库的一些实现的名称。

作为未命名为“libc”的 C 标准库实现的示例,Microsoft C 标准库实现是“C 运行时库”的一部分,通常称为“CRT”。

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

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

于 2011-04-02T18:06:07.497 回答
8

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

于 2011-04-02T18:10:21.880 回答
1

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

  • glibc:为 GNU 项目编写的 libc 实现
  • klibc:libc 的简约子集实现
  • ...
于 2011-04-02T18:07:05.947 回答
0

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

于 2011-04-02T18:08:13.733 回答