我该在哪里找到所有C标准库的源代码?

28

我正在寻找所有C标准库的完整源代码。换句话说,我正在寻找stdio.h、stdlib.h、string.h、math.h等的源代码...我想看看它们是如何创建的。我认为这取决于平台,但Linux或Windows都可以。


你需要头文件(stdio.h)还是实现头文件的.lib和.dll文件的源代码? - Steve Rowe
5
.h文件并不是“所有C标准库源代码的全部内容”,它们只是头文件。所以你真正想要的是什么呢?头文件随着你的C实现而提供,但函数本身的定义可能不可用,如果你的C实现不是开源的话。即使这些定义可用,它们本身可能并不很有指导意义,因为在某些情况下,标准库函数只是调用一个操作系统函数来完成所有工作。 - Steve Jessop
4
您可能需要 GNU Libc(http://www.gnu.org/software/libc/)。 - Basile Starynkevitch
4个回答

25

如果您想得到实际的实现,正如其他人所假设的那样,目前许多Linux发行版都使用glibc来实现C标准库。常见的替代方案包括musl libcdiet libcuClibcBionic


1
uClibc 表示其发布已经暂停,建议使用 uClibc-ng https://uclibc-ng.org/。 - flavio

11

PJ Plauger写了一本关于标准C库的书籍。包括(现在已经过时的)标准的参考和源代码。


3

通常情况下,Microsoft Visual Studio的系统头文件位于<InstallDir>\VC\include目录下,如果安装了源代码,则源代码位于<InstallDir>\VC\crt\src目录下。


-3

无论是与IDE一起安装还是您已经显式安装,您都必须在相应位置的目录“Include”中查找。

例如:我使用MinGW。 所以,我会去

c:/MinGW/include 查找这些头文件。 同样,对于IDE(比如Dev-cpp),您需要转到c:/dev-cpp/include。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接