我正在学习malloc并了解它的用途。我很好奇malloc是用C语言编写的。如果是这样,我希望看到定义它的代码。谁知道我在哪里可以找到malloc的定义?
编辑:
我知道这个链接(很多人都喜欢谷歌)http://pubs.opengroup.org/onlinepubs/009695399/functions/malloc.html,但这不是malloc的代码定义。我正在寻找定义malloc的源文件(如果存在)。看起来像这样的东西
void *malloc(size_t size) {
// code for how malloc is implemented
}
答案 0 :(得分:2)
答案 1 :(得分:1)
https://code.woboq.org/userspace/glibc/malloc/malloc.c.html
https://fossies.org/dox/glibc-2.23/malloc_8c_source.html
以上是malloc代码的链接。
答案 2 :(得分:1)
malloc()
在标准库中定义,就所有unix风格而言,可能更多,因为标准库属于C库。无论哪个系统都实现了C库和C API,人们至少可以期望它拥有malloc。
这里有几个(除了上面提到的GNU)链接源代码:
除了标准库malloc()
之外,还有一些传统的unix系统(例如IRIX)也用于实现快速 libmalloc
。
请同时查看此SO post。
答案 3 :(得分:0)
http://pubs.opengroup.org/onlinepubs/009695399/functions/malloc.html 你可以找到很多这样的定义。你应该先试着谷歌吧:))