首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >malloc和malloc(3)的区别是什么?

malloc和malloc(3)的区别是什么?
EN

Stack Overflow用户
提问于 2012-07-12 04:22:32
回答 3查看 205关注 0票数 4

在jemalloc内存管理器上读取hacker article时,黑客总是引用malloc(3),而不是malloc。我想知道为什么。

他这样做是因为它引用了特定的linux malloc实现吗?或者只是简单地引用所有的malloc变体,它们实现了unix/linux手册页的section 3 (libary functions)中描述的接口?这个选项是我的猜测,我想确认一下。还有其他原因吗?

那么,黑客是不是太具体了?还是malloc和malloc(3)之间有区别?

第(3)部分不是对黑客文章后面提到的其他文档、文章或研究的引用。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-07-12 04:24:23

malloc(3)只是一个提示,说明malloc是手册页第3部分的一部分。第3部分是库函数的位置。这是通过反对手册页的第2节中的syscall。没有malloc(2)

例如:

fwrite是一个库函数,因此有时会编写为fwrite(3)

write是一个系统调用,所以有时写成write(2)

如果您运行以下命令:

代码语言:javascript
运行
复制
$ man man

它会告诉你

代码语言:javascript
运行
复制
   1   Executable programs or shell commands
   2   System calls (functions provided by the kernel)
   3   Library calls (functions within program libraries)
   4   Special files (usually found in /dev)
   5   File formats and conventions eg /etc/passwd
   6   Games
   7   Miscellaneous  (including  macro  packages and convenâ
       tions), e.g. man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]
票数 9
EN

Stack Overflow用户

发布于 2012-07-12 04:26:08

前言:我的unix很弱。

我相信这只是对第三节库的引用。

(摘自行话文件)

诸如malloc(3)和patch(1)之类的引用是针对Unix工具的(其中一些工具,例如patch(1),实际上是通过Usenet分发的开源工具)。

票数 3
EN

Stack Overflow用户

发布于 2012-07-12 04:24:39

看起来作者只是非常具体而已。

如果可能存在相同函数的shell版本,则指定对手册页的第3节的引用通常很有用。例如,printf(1)与printf(3)的man 1 printf

但是对于malloc,文档应该只存在于第3节中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11440846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档