我在搜索C标准库的源代码.我的意思是,例如,cos、abs、printf、scanf、fopen和所有其他标准C函数是如何编写的,我的意思是查看它们的源代码.
所以在寻找这个的时候,我遇到了GLIBC,但我不知道它到底是什么.它是GNU C库,它包含一些源代码,但它们实际上是什么,它们是标准函数的源代码还是其他什么?它是用来做什么的?
我在搜索C标准库的源代码.我的意思是,例如,cos、abs、printf、scanf、fopen和所有其他标准C函数是如何编写的,我的意思是查看它们的源代码.
所以在寻找这个的时候,我遇到了GLIBC,但我不知道它到底是什么.它是GNU C库,它包含一些源代码,但它们实际上是什么,它们是标准函数的源代码还是其他什么?它是用来做什么的?
它实现了C标准中描述的Standard C library个,以及一些额外有用的东西,这些东西不是严格的标准,但经常使用.
其主要内容包括:
1)ANSI、C99、C11标准中描述的C库.它包括宏、符号、函数实现等(printf()、malloc()等)
2) POSIX标准库.系统调用的"用户区"粘合剂.(open()、read()等.实际上glibc并不"实现"系统调用.内核做到了.但glibc为内核提供的服务提供了用户界面,因此用户应用程序可以像使用普通函数一样使用系统调用.
3)也有一些不规范但有用的东西.
"使用原力,读取来源"
$git clone git://sourceware.org/git/glibc.git
(最近,当我在glibc中浏览malloc.c时,我非常开明)