我知道,当我们在源代码中调用任何库函数时,函数定义将在运行时加载到 RAM(假设动态链接)中。 但库函数的定义到底存储在哪里。
如果不是.c格式,它们是如何存储的?
最佳答案
如果您需要获取任何函数定义,您需要检查源代码[这是显而易见的]。
要获取库中的函数定义,[例如 - glibc
],您必须获取库的源代码并浏览它。通常,库源代码,[.c 格式,如果你的意思是] 将被编译以生成一个库
- 静态[通常由
.a
注释] - 动态[通常由
.so
、共享对象表示]
与一些源代码链接以生成最终的二进制文件。
所以,是的,它们采用 .c 格式(至少,人类可读格式,我最好说),您可以浏览。
注意:An online browsable glibc 的版本。
P.S - 抱歉,如果我的答案偏向于 linux 实现,但是它对于 windows(xp) PC
仍然有效
关于c - 在我的 windows(xp) PC 中,哪里可以看到 malloc() 或任何库函数的源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28364555/