| 
|  | ≫ |  | 
 |  | HP OpenVMSHP C ランタイム・ライブラリ・リファレンス・マニュアル (下巻)
 
 
 
 
 
 指定されたディレクトリをオープンします。
 
 形式#include <dirent.h>
DIR *opendir (const char *dir_name);
 
 
 引数
 
 dir_nameオープンするディレクトリの名前。 
 説明
opendir関数は, dir_name で指定されたディレクトリをオープンし,それにディレクトリ・ストリームを関連付けます。 dir_name 引数は,OpenVMS 形式あるいは UNIX 形式で指定できます。ディレクトリ・ストリームの位置は最初のエントリに設定されます。
<dirent.h>ヘッダ・ファイルに定義されている
DIR型は,ディレクトリ・ストリームを表します。ディレクトリ・ストリームとは,特定のディレクトリの中のすべてのディレクトリ・エントリの順序付きのシーケンスです。
また,
opendir関数は,それ以降の操作でディレクトリ・ストリームを識別するためのポインタも返します。 
dir_name で指定されたディレクトリにアクセスできない場合,またはストリーム全体を保持するのに十分なメモリがない場合には, NULL ポインタが返されます。
 
 
 |  | 注意 
 
 オープンされたディレクトリは,その次にディレクトリをオープンする試みが成功するように,必ず
closedir関数でクローズされなくてはなりません。
opendir関数は,
readdir,
closedir, および
rewinddir関数と組み合わせて,ディレクトリの内容を確認するために使用します。
opendir関数は,UNIX 形式のパス名指定をサポートします。 UNIX 形式のディレクトリ指定については第 1.3.3 項を参照してください。
 
 | 
 
 
 例
closedirの項のプログラム例を参照してください。
 
 戻り値
 
| x | DIR
型のオブジェクトへのポインタ。 |  | NULL | エラーを示します。
errno
は以下のいずれかの値に設定されます。 
 EACCES---
dir_name のいずれかのコンポーネントに対する検索許可が拒否されたか,
dir_name に対する読み込み許可が拒否された。
 ENAMETOOLONG---
dir_name 文字列の長さが PATH_MAX を超えたか,パス名コンポーネントが NAME_MAX よりも長かった。
 ENOENT---
dir_name 引数が,存在しないファイルの名前をポイントしているか,空の文字列である。
 
 |  
 
 
 
     |