有时我想查找stdlib函数的实现,我已经下载了源代码,但是它非常混乱。仅仅用grep不太适合,因为有太多匹配结果。是否有人知道一个像doxygen风格一样的网页文档?Linux内核也是同样的情况。谢谢。
你应该检查你的发行版是使用原版GLIBC还是EGLIBC分支(Debian和Ubuntu已经切换到EGLIBC EDIT:他们在2014年左右又切换回来了)。无论如何,GLIBC的存储库浏览器位于http://sourceware.org/git/?p=glibc.git。@guruz下面发布的http://code.woboq.org/userspace/glibc/也是一个不错的选择。由于存在同一文件的多个版本,源码有点复杂。
这个libc文档怎么样?这里。也许这个是内核的文档?此外还有Google Code搜索;这里是一个搜索示例。更多关于Google Code搜索的信息,您可以输入类似于这样的搜索查询:package:linux-2.6 malloc,以查找在Linux 2.6内核中与malloc相关的任何内容。编辑:Google Code搜索现已关闭。但是您可以访问git repo:http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git,它也具有搜索功能。
如果你正在使用GNU C(glibc),函数(超出GNU扩展)遵循 POSIX标准,就其参数、实现、失败和返回值而言。如果你想窥探静态成员的内部结构,你必须查看代码。每次尝试采用Doxygen等工具来管理glibc都会被拒绝,原因如下: 冗余,POSIX已经记录了几乎所有公开信息,还有man和info页面。 最初需要太多的工作。 对维护者来说是更多的工作。 就内核而言,Linux确实使用了一个类似于Doxygen的系统,称为 Kerneldoc。