3

我正在使用 Linux (ubuntu)。

我想阅读一些在头文件中声明的函数的函数定义,比如stdlib.h

我试图寻找stdlib.c但找不到。

谁能告诉我在哪里可以找到我系统上的相应代码文件。

如果我太天真,请原谅我。谢谢

4

4 回答 4

6

您需要下载glibc的源代码。您的发行版通常只附带 C 库的编译版本。另见维基百科文章

(例如,在类 Debian 系统上 try apt-get source libc6。)

glibc 不是类 Linux 系统的唯一 C 库,存在一些“竞争对手”。例如,uClib是一个非常小的替代方案,旨在用于嵌入式应用程序。

于 2013-02-21T23:59:20.840 回答
1

对于大多数基于 Linux 的系统,标准库由 glibc 提供。您可以在此处浏览 git 存储库:

http://sourceware.org/git/?p=glibc.git;a=tree

请注意,许多有趣的资源都隐藏在sysdeps树下,尤其是sysdeps/unix/sysv/linux类似的。

于 2013-02-22T00:47:59.543 回答
0

正如前面的答案所解释的,Linux 上的函数代码包含在glibc. 如果您需要在您的系统上运行的确切代码,那是我们唯一的递归。如果您只是对如何实现这些功能感兴趣,也许最好的办法是查看更简单的 libcs​​,查看uClibc,即嵌入式使用的微型 libc;寻找 Minix 的 libc 源代码(原始的,而不是当前的 Minix3);也许计划 9中的那个也合适。

于 2013-02-22T01:48:33.037 回答
-2

如果您在 ubuntu 中使用意味着您使用 vim editor.so 运行 C 程序,那么您想要哪个头文件,您在 Esc 模式下按 gf。例子

      #include<stdio.h>
     you placed in the cursor point s and press the gf then automatically  go to the standard library of stdio.h

                (or)

使用命令更改目录

                  cd /usr/include

该目录包含在所有头文件中

于 2013-02-22T09:24:07.767 回答