温馨提示×

ubuntu copendir怎么关闭句柄

小樊
36
2026-10-05 14:34:12
栏目: 智能运维

在 Ubuntu(Linux)下,使用 opendir() 打开目录后,需要用 closedir() 来关闭目录句柄(释放资源)。

基本用法

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

int main() {
    DIR *dir = opendir("/tmp");
    if (dir == NULL) {
        perror("opendir");
        return 1;
    }

    // 使用 dir ...
    struct dirent *entry;
    while ((entry = readdir(dir)) != NULL) {
        printf("%s\n", entry->d_name);
    }

    // 关闭目录句柄
    closedir(dir);

    return 0;
}

关键点

  • opendir() 返回 DIR *
  • 用完后必须调用 closedir(DIR *)
  • 不关闭会导致 文件描述符泄漏

编译

gcc test.c -o test

如果你是在 C++ 或 其他语言(如 Python) 里用目录操作,也可以告诉我,我给你对应示例。

0 踩