• 第一章 列出一个目录中所有文件 程序清单1-1


    1.  apue.h 在书后的附录中找到输入。

    2. gcc时报错, err_sys, err_quit, 补充函数, 加printf。 err_quit里还要加 exit(0).

    3. gcc 得到 a.out。

    4. 执行 ./a.out 报错, Segmentation fault (core dumped)。

    5. 添加参数, 执行 ./a.out .      , 打印当前目录下文件, 成功打印。

       注: gcc -o 选项, 控制输出的文件名。 如本例中,  gcc 1-1_ls.c -o ls则输出ls可执行文件。

        int argc 命令参数个数。 至少为1, argv[0]是执行命令本身, 即为 ./ls, 若不加 ., 则 argv[1] 为 null

        则函数在 opendir(argv[1])会因为非法指针, 导致段错误。

    重点

        DIR *dp;

        struct dirent *dirp;

        (dp = opendir(argv[1])) != NULL;                                     //opendir()返回的是DIR的指针。

        while ( (dirp = readdir(dp)) != NULL)                                //readdir()返回的是dirent指针。

        {

            printf("%s ", dirp->d_name);                                    //打印d_name.

        }

        closedir(dp);                                                                  //closedir()与opendir()相对应。

  • 相关阅读:
    c语言中程序的循环控制 大小值的判断及赋值
    python中猜数字小游戏
    R语言中自编函数(例题)
    c语言中continue语句
    c语言中程序的循环控制 变量的非常规变化例题
    python中向列表中添加元素
    mean
    python中原始字符串和长字符串
    ArcInfo 的工作空间和 Coverage
    ArcGIS资料大全
  • 原文地址:https://www.cnblogs.com/gavinwu/p/3333322.html
Copyright © 2020-2023  润新知