回 帖 发 新 帖 刷新版面

主题:[讨论]谁有opendir()和readdir()的具体用法?

谁有opendir()和readdir()的具体用法?
最近在学习unix下的常用函数及命令,请大家多指教
最好带简单例子的,因为初学,便于理解

回复列表 (共2个回复)

沙发

用 man opendir 和 man readdir 查看

板凳

A simple example , achieve DIR command

[code=c]
/* Use   Dev-C++ 4.9.9.2   compiled */

#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <dirent.h>

void do_dir (char dirname[])

{
    DIR *dir_p;
    struct dirent *direntp;
    
    if ((dir_p = opendir (dirname)) == NULL)
    {
        printf ("dir ERROR !!\n");
        exit (0);
    }
    else 
    {
        while ((direntp = readdir (dir_p)) != NULL)
        {
            printf ("%s\n", direntp->d_name);
        }
        closedir (dir_p);
    }
}


int main(int argc,char *argv[])

{
    if (argc == 1)
    {
        do_dir(".");
    }
    else
    {
        while (argc-->1)
        {
            printf ("DIR is %s\n\n",*++argv);
            do_dir (*argv);
        }
    }
}

[/code]

我来回复

您尚未登录,请登录后再回复。点此登录或注册