DIR *opendir(const char *name);
DIR 열기에 성공하면 디렉토로 정보 구조체인 DIR 포인터를 반환하고 실패하면 NULL을 반환한다.
struct dirent *readdir(DIR *dirp);
dirp : - opendir(3) 또는 fdopendir(3)을 통하여 생성된 DIR *
(RETURN)
NULL이 아닌 경우
- 파일 또는 directory 정보를 얻는다.
- LINUX의 struct dirent 구조체는 아래와 같으나,
- UNIX 마다 다르므로 호환성을 유지하기 위해서는 d_name만 유효합니다.
struct dirent
{
ino_t d_ino; /* inode number */
off_t d_off; /* offset to the next dirent */
unsigned short d_reclen; /* length of this record */
unsigned char d_type; /* type of file; not supported by all file system types */
char d_name[256]; /* filename */
};
NULL
- 더 이상 읽을 정보가 없거나 오류가 발생하였으며, 상세한 오류는 errno에 저장됩니다.
- EBADF : dirp가 유효하지 않습니다.
int closedir(DIR *dir);
opendir 했으면 사용 후 닫아주어야 한다.
(RETURN)
성공 == 0
실패 == -1