C関数宣言が含まれているヘッダーファイルを見つける簡単な方法はありますか? cd
ing into /usr/include
および実行中(grep -E 'system.*\(' *.h -R
)いくつかの試行錯誤で動作しますが、これを行う簡単な方法はありませんか?
$ man 2 read
...
READ(2) Linux Programmer's Manual READ(2)
NAME
read - read from a file descriptor
SYNOPSIS
#include <unistd.h>
...
システムのヘッダーファイルを検索すると、関数がシステムで宣言されているヘッダーファイルがわかります。関数が複雑なマクロを介して宣言される場合があるため、難しい場合があります。また、yourシステムで関数を宣言しているヘッダーファイルだけがわかります。これは、最初に他のヘッダーが必要になるため、直接含めることができないヘッダーファイルである場合もあります。
含めるヘッダーファイルを見つける唯一の安全な方法は、関数を提供するライブラリのドキュメントを参照することです。標準ライブラリについては、以下を参照できます。
man 3 function_name
またはman 2 function_name
— 2と の違いは主に歴史的です)またはその他のドキュメント(例:Linuxの GNU libcマニュアル )。