天天看点

C/C++:遍历目录

C/C++:遍历目录

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

int main(int ac, char *av[])
{
    DIR *dir = NULL;
    struct dirent *item = NULL;

    dir = opendir(av[]);
    if (dir == NULL)
        printf("opendir error\n");

    while ((item = readdir(dir)) != NULL)
        printf("item.name : %s\n", item->d_name);

    closedir(dir);

    return ;
}
           
[[email protected] ~]$ !g
gcc -o main main.c
[[email protected] ~]$ ./main .
item.name : 
item.name : 
item.name : SR200550
item.name : main
item.name : rsa.json
item.name : .emacs
……
           

Keys:

DIR *dir;

struct dirent *item;

dir = opendir(xxx);

item = readdir(dir);

item->d_name;

closedir(dir);