在Linux中,readdir()函数用于读取目录中的条目。它的原型如下:
#include <dirent.h>
struct dirent *readdir(DIR *dirp);
readdir()函数的返回值是一个指向struct dirent结构的指针,该结构包含有关目录条目的信息。如果成功读取目录条目,则返回该指针;如果到达目录末尾或发生错误,则返回NULL。
struct dirent结构包含以下成员:
d_ino: 目录条目的inode号。d_off: 目录条目的偏移量,用于下次调用readdir()时从该位置继续读取。d_reclen: 目录条目的长度。d_name: 目录条目的名称,最长为255个字符。需要注意的是,readdir()函数返回的目录条目顺序是不确定的,除非目录中的条目数量很少,否则不能依赖顺序来处理目录内容。