名前
opendir - ディレクトリをオープンする
書式
#include <sys/types.h>
#include <dirent.h>
DIR *opendir(const char *name);
説明
opendir() 関数はディレクトリ name に対応する ディレクトリ・ストリームをオープンし、そのストリームへのポインタを返す。 ストリームの位置はディレクトリの先頭のエントリに設定される。
返り値
opendir() 関数はディレクトリ・ストリームへのポインタを返す。 エラーの場合は、NULL が返されて、 errno が適切に設定される。
エラー
EACCES | アクセス権限がない。 |
EMFILE | プロセスが使用中のファイル・ディスクリプタが多すぎる。 |
ENFILE | システムでオープンされているファイルが多すぎる。 |
ENOENT | ディレクトリが存在しないか、または name が空文字列である。 |
ENOMEM | 命令を実行するのに充分なメモリがない。 |
ENOTDIR | name はディレクトリではない。 |
準拠
SVr4, 4.3BSD, POSIX.1-2001.
注意
ディレクトリ・ストリームに対応するファイル・ディスクリプタは dirfd(3) を使用して得ることができる。
関連項目
open(2), closedir(3), dirfd(3), readdir(3), rewinddir(3), scandir(3), seekdir(3), telldir(3)