Bash命令和C函數重名,如何使用man查看C函數手冊?

今天在學習C目錄文件操作時候,遇到一個問題:我想查看mkdir函數說明,結果使用man mkdir,得到的是Bash命令mkdir的結果。

之前沒有特別注意,如果庫函數和Bash命令重名時候怎麼使用man查看C庫函數幫助?

       我注意到,有些博客給出的答案是使用:    man 2 read 或者是man 3 read

其實我們使用man  man命令就能看到完整的說明

1 用戶命令, 可由任何人啓動的。

2 系統調用, 即由內核提供的函數。

3 例程, 即庫函數,比如標準C庫libc。

4 設備, 即/dev目錄下的特殊文件。

5 文件格式描述, 例如/etc/passwd。

6 遊戲, 不用解釋啦!

7 雜項, 例如宏命令包、慣例等。

8 系統管理員工具, 只能由root啓動。

9 其他(Linux特定的), 用來存放內核例行程序的文檔。

要確認我們需要查看的命令屬於哪一部分的,就用該部分編號在命令之前。如:man 2 mkdir

man 3 mkdir

注意到:man mkdir得到的是User Commands,man 2 mkdir 變成了Linux programmer's Manual,man 3 mkdir得到的是POSIX Programmer's Manual.

如果看這兩個手冊對兩個庫函數的說明似乎沒有什麼區別。但是:對於Linux下C程序員而言,應該使用man 2 mkdir

POSIX Programmer's Manual也在開頭就有聲明:

This  manual  page  is  part of the POSIX Programmer's Manual.  The Linux implementation of this interface may differ (consult the corresponding Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux.

大致意思是:該手冊頁是POSIX程序員手冊的一部分。 該接口的Linux實現可能有所不同(有關Linux使用的詳細信息,請諮詢相應的Linux手冊),或者該接口可能無法在Linux上實現。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章