READDIR_R(3) | Linux Programmer's Manual | READDIR_R(3) |
readdir_r - ディレクトリを読み込む
#include <dirent.h>
int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result);
readdir_r():
この関数は非推奨である。代わりに readdir(3) を使用すること。
readdir_r() 関数は readdir(3) のリエントラント版として導入された。この関数はディレクトリストリーム dirp から次のディレクトリエントリーを読み込み、 entry が指す呼び出し元が割り当てたバッファーにそのエントリーを格納して返す。 dirent 構造体の詳細は readdir(3) を参照。
結果を返すバッファへのポインターが *result に格納される。ディレクトリストリームの末尾に達した場合は、NULL が代わりに *result で返される。
アプリケーションでは readdir_r() の代わりに readdir(3) を使用することを推奨する。さらに、glibc 2.24 以降では readdir_r() は非推奨となっている。理由は以下の通りである。
成功すると、 readdir_r() 関数は 0 を返す。 エラーの場合、(「エラー」の節のリストに載っている) 正のエラー番号を返す。 ディレクトリストリームの末尾に達した場合、 readdir_r() は返り値として 0 を返し、 *result に NULL を格納する。
この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース | 属性 | 値 |
readdir_r() | Thread safety | MT-Safe |
POSIX.1-2001, POSIX.1-2008.
readdir(3)
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。
2016-03-01 |