Rechercher une page de manuel
readdir
Langue: ja
Version: 1996-04-22 (fedora - 25/11/07)
Section: 3 (Bibliothèques de fonctions)
名前
readdir - ディレクトリを読み込む書式
#include <sys/types.h> #include <dirent.h> struct dirent *readdir(DIR *dir);
説明
readdir() 関数は、dir の指すディレクトリストリームの中で、 次のディレクトリエントリを表す dirent 構造体へのポインタを返す。 ファイルの最後に達した場合やエラーが発生した場合は NULL を返す。Linux では dirent 構造体は以下のように定義されている:
-
struct dirent { ino_t d_ino; /* inode 番号 */ off_t d_off; /* 次の dirent へのオフセット */ unsigned short d_reclen; /* このレコードの長さ */ unsigned char d_type; /* ファイル種別 */ char d_name[256]; /* ファイル名 */ };
POSIX によると、 dirent 構造体にはサイズの明示されていない char d_name[] フィールドが含まれる。このフィールドには最大で NAME_MAX 文字と、それに続く終端の NULL バイトが格納される。 POSIX.1-2001 では XSI 拡張として ino_t d_ino フィールドについても記述している。 「他のフィールドを使用することは、 プログラムの可搬性を損なうことになるだろう」
readdir() によって返されるデータは、以降の同じストリームに対する readdir() の呼び出しによって上書きされる可能性がある。
返り値
readdir() 関数は dirent 構造体へのポインタを返す。 エラーが発生するか、ファイルの最後に達した場合は NULL を返す。 エラーの場合、 errno が適切に設定される。エラー
- EBADF
- ディレクトリストリームディスクリプタ dir が無効。
準拠
SVr4, 4.3BSD, POSIX.1-2001関連項目
read(2), closedir(3), dirfd(3), ftw(3), opendir(3), rewinddir(3), scandir(3), seekdir(3), telldir(3)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre