Rechercher une page de manuel
getdents
Langue: ja
Version: 2007-06-01 (openSuse - 09/10/07)
Section: 2 (Appels système)
̾Á°
getdents - ¥Ç¥£¥ì¥¯¥È¥ê¡¦¥¨¥ó¥È¥ê¤ò¼èÆÀ¤¹¤ë½ñ¼°
#include <unistd.h> #include <linux/types.h> #include <linux/dirent.h> #include <linux/unistd.h> #include <errno.h> int getdents(unsigned int fd, struct dirent *dirp, unsigned int count);
ÀâÌÀ
¤³¤ì¤Ï¤¢¤Ê¤¿¤¬¶½Ì£¤ò»ý¤Ä¤è¤¦¤Ê´Ø¿ô¤Ç¤Ï¤Ê¤¤¡£ POSIX ½àµò¤Î C ¥é¥¤¥Ö¥é¥ê¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ë¤Ä¤¤¤Æ¤Ï readdir(3) ¤ò¸«¤ë¤³¤È¡£ ¤³¤Î¥Ú¡¼¥¸¤ÏÍç¤Î¥«¡¼¥Í¥ë¥·¥¹¥Æ¥à¥³¡¼¥ë¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤òµ¤·¤Æ¤¤¤ë¡£getdents() ¤Ï fd ¤Ç»ØÄꤷ¤¿¥Ç¥£¥ì¥¯¥È¥ê¤«¤é dirp ¤¬»Ø¤·¤Æ¤¤¤ë¥á¥â¥êÎΰè¤Ë¤¤¤¯¤Ä¤«¤Î dirent ¹½Â¤ÂΤòÆɤ߹þ¤à¡£ count ¥Ñ¥é¥á¡¼¥¿¡¼¤Ï ¥á¥â¥êÎΰè¤Î¥µ¥¤¥º¤Ç¤¢¤ë¡£
dirent ¹½Â¤ÂΤϰʲ¼¤Î¤è¤¦¤ËÀë¸À¤µ¤ì¤Æ¤¤¤ë:
-
struct dirent { long d_ino; /* inode number */ off_t d_off; /* offset to next dirent */ unsigned short d_reclen; /* length of this dirent */ char d_name [NAME_MAX+1]; /* filename (null-terminated) */ }
d_ino ¤Ï inode ÈÖ¹æ¤Ç¤¢¤ë¡£ d_off ¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤ÎÀèƬ¤«¤é¼¡¤Î dirent ¤ÎÀèƬ¤Þ¤Ç¤Îµ÷Î¥¤Ç¤¢¤ë¡£ d_reclen ¤Ï¤³¤Î dirent Á´ÂΤΥµ¥¤¥º¤Ç¤¢¤ë¡£ d_name ¤Ï¥Ì¥ë(null)ʸ»ú¤Ç½ª¤ï¤ë¥Õ¥¡¥¤¥ë̾¤Ç¤¢¤ë¡£
¤³¤Î¥³¡¼¥ë¤Ï readdir(2) ¤Ë¼è¤Ã¤ÆÂå¤ï¤ë¡£
ÊÖ¤êÃÍ
À®¸ù¤·¤¿¾ì¹ç¤Ï¡¢Æɤ߹þ¤ó¤À¥Ð¥¤¥È¿ô¤¬ÊÖ¤µ¤ì¤ë¡£ ¥Ç¥£¥ì¥¯¥È¥ê¤Î½ª¤ï¤ê¤Ê¤é¤Ð 0 ¤¬ÊÖ¤µ¤ì¤ë¡£ ¥¨¥é¡¼¤Î¾ì¹ç¤Ï -1 ¤òÊÖ¤µ¤ì¡¢ errno ¤ËŬÀÚ¤ÊÃͤ¬ÀßÄꤵ¤ì¤ë¡£¥¨¥é¡¼
- EBADF
- ¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿ fd ¤Ï̵¸ú¤Ç¤¢¤ë¡£
- EFAULT
- °ú¤¿ô¤Î¥Ý¥¤¥ó¥¿¡¼¤¬¸Æ¤Ó½Ð¤·¤¿¥×¥í¥»¥¹¤¬¥¢¥¯¥»¥¹²Äǽ¤Ê¶õ´Ö¤Î ³°Éô¤ò»Ø¤·¤Æ¤¤¤ë¡£
- EINVAL
- ·ë²ÌÍѤΥХåե¡¡¼¤¬¾®¤µ¤¹¤®¤ë¡£
- ENOENT
- ¤½¤Î¤è¤¦¤Ê¥Ç¥£¥ì¥¯¥È¥ê¤Ï¸ºß¤·¤Ê¤¤¡£
- ENOTDIR
- ¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¤¬¥Ç¥£¥ì¥¯¥È¥ê¤ò»²¾È¤·¤Æ¤¤¤Ê¤¤¡£
½àµò
SVr4.Ãí°Õ
glibc ¤Ï¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤ËÂФ¹¤ë¥é¥Ã¥Ñ¡¼´Ø¿ô¤òÄ󶡤·¤Æ¤¤¤Ê¤¤¡£ syscall(2) ¤ò»È¤Ã¤Æ¸Æ¤Ó½Ð¤¹¤³¤È¡£´ØÏ¢¹àÌÜ
readdir(2), readdir(3)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre