copendir() 函数在 Linux 中用于打开一个目录流,以便后续可以使用其他相关函数(如 readdir())来读取目录中的内容。下面是一个使用 copendir() 函数的基本示例:
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
int main() {
    DIR *dir;
    struct dirent *entry;
    // 打开当前目录
    dir = opendir(".");
    if (dir == NULL) {
        perror("opendir");
        return EXIT_FAILURE;
    }
    // 读取目录中的条目
    while ((entry = readdir(dir)) != NULL) {
        printf("%s\n", entry->d_name);
    }
    // 关闭目录流
    closedir(dir);
    return EXIT_SUCCESS;
}
包含头文件:
#include <dirent.h>:包含处理目录流所需的定义。#include <stdio.h> 和 #include <stdlib.h>:用于标准输入输出和退出函数。打开目录:
opendir() 函数打开当前目录(用 "." 表示)。如果打开失败,opendir() 返回 NULL,可以使用 perror() 打印错误信息。读取目录条目:
readdir() 函数从目录流中读取每个目录项,直到返回 NULL,表示已经到达目录流的末尾。entry->d_name 包含目录项的名称。关闭目录流:
closedir() 函数关闭已打开的目录流,释放相关资源。closedir(),以避免资源泄漏。