温馨提示×

debian readdir属哪个库

小樊
46
2026-09-13 09:13:22
栏目: 智能运维

在 Debian(以及其它 Linux 系统)中,readdir 是 C 标准库(glibc) 提供的函数,用于读取目录内容。

具体说明如下:

1. 所属库

  • 库名:libc(通常是 glibc,即 GNU C Library)
  • 头文件:
    #include <dirent.h>
    
  • 链接方式: 编译时一般不需要显式链接,因为 gcc 默认链接 libc:
    gcc test.c -o test
    
    如果是静态或特殊情况,可显式写:
    gcc test.c -o test -lc
    

2. 相关函数

readdir 通常和以下函数一起使用:

  • opendir()
  • readdir()
  • closedir()

示例:

#include <dirent.h>
#include <stdio.h>

int main() {
    DIR *dir = opendir(".");
    struct dirent *entry;
    while ((entry = readdir(dir)) != NULL) {
        printf("%s\n", entry->d_name);
    }
    closedir(dir);
    return 0;
}

3. 在 Debian 中查看

你可以用以下命令确认:

man readdir

或查看实现来源:

ldd ./your_program

通常会看到:

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6

总结

✅ readdir 属于 glibc(libc)
✅ 头文件是 <dirent.h>
✅ 不需要额外安装库(Debian 默认已带)

如果你问的是 readdir 系统调用(如 getdents),那属于 Linux 内核,但用户态一般直接用 readdir(库函数)。

0 踩