转载的,深入理解一下链表的使用。

Dev C++ 测试通过:利用链表实现目录内所有文件列表显示

#include <stdio.h>
#include <dirent.h>
/*#include <alloc.h>*/
#include <string.h>

void main(int argc,char *argv[])
{
  DIR *directory_pointer;
  struct dirent *entry;
  struct FileList
  {
    char filename[64];
    struct FileList *next;
  }start,*node;
  if (argc!=2)
  {
    printf("Must specify a directory\n");
    exit(1);
  }
  if ((directory_pointer=opendir(argv[1]))==NULL)
    printf("Error opening %s\n",argv[1]);
  else
  {
    start.next=NULL;
    node=&start;
    while ((entry=readdir(directory_pointer))!=NULL)
    {
      node->next=(struct FileList *)malloc(sizeof(struct FileList));
      node=node->next;
      strcpy(node->filename,entry->d_name);
      node->next=NULL;
    }
    closedir(directory_pointer);
    node=start.next;
    while(node)
    {
      printf("%s\n",node->filename);
      node=node->next;
    }
  }
}

linux遍历文件目录 链表形式相关推荐

  1. linux遍历文件目录

    借鉴的百度文库,特此梳理.用了多少库呢,你猜 linux遍历文件目录 作业要求 示例 延伸学习 功能分析 实现步骤 获取命令行参数 判断路径类型 实现针对目录.文件的不同处理方法 如果一个路径是目录 ...

  2. 遍历Linux kernel的链表时删除元素的方法

    内核的链表list_head设计相当巧妙.今天我说一下对list_head链表的遍历时如何删除元素. 链表遍历时,如果删除当前元素,一般都会出错的.在由于语言的各种库中的链表都是如此.list_hea ...

  3. linux内核中链表代码分析---list.h头文件分析(二)【转】

    转自:http://blog.chinaunix.net/uid-30254565-id-5637598.html linux内核中链表代码分析---list.h头文件分析(二) 16年2月28日16 ...

  4. linux 内核的链表操作(好文不得不转)

    以下全部来自于http://www.ibm.com/developerworks/cn/linux/kernel/l-chain/index.html 无任何个人意见. 本文详细分析了 2.6.x 内 ...

  5. c linux time微秒_Linux基础知识(Linux系统、Linux中的链表)

    Linux系统简介 Linux系统的结构及特点 Linux系统的结构图如下图所示: 从上图可以看出,Linux是一个典型的宏内核(一体化内核)结构.硬件系统上面时硬件抽象层,在硬件抽象层上面时内核服务 ...

  6. linux中_Linux基础知识(Linux系统、Linux中的链表)

    Linux系统简介 Linux系统的结构及特点 Linux系统的结构图如下图所示: 从上图可以看出,Linux是一个典型的宏内核(一体化内核)结构.硬件系统上面时硬件抽象层,在硬件抽象层上面时内核服务 ...

  7. Linux内核【链表】整理笔记(1)

    转自:http://blog.chinaunix.net/uid-23069658-id-4576255.html 我们都知道Linux内核里的双向链表和学校里教给我们的那种数据结构还是些不一样.Li ...

  8. linux内核中链表代码分析---list.h头文件分析(一)

    linux内核中链表代码分析---list.h头文件分析(一) 16年2月27日17:13:14 在学习数据结构时,有一个重要的知识点就是链表.对于链表的一些基本操作,它的最好学习资料就是内核中的li ...

  9. 遍历进程链表,打印pcb相关字段的内核模块

    Table of Contents 代码 代码 makefile 附上linux内核4.20.11源代码 sched.h    include\linux    53922    2/20/2019  ...

最新文章

  1. MySQL计算指标连续两月金额相比_20160929
  2. 谁说女生不能搞IT?一名女程序员的奋斗史
  3. pyqt5实战之透明样式和页面切换和弹出新窗口
  4. php swoole process,Swoole_process实现进程池的方法
  5. Xshell利用Xftp传输文件,使用pure-ftpd搭建ftp服务
  6. 锐捷交换机实验案例:vlan间互访的配置与验证
  7. mysql 并行复制原理_MySQL 5.7 并行复制实现原理与调优
  8. 量化交易策略matlab交易方案,【策略分享】Matlab量化交易策略源码分享
  9. Atitit 软件开发方法论 attilax著 艾龙 著 1. 1.3 软件工程方法 软件工程方法论分为软件开发方法论和软件组织方法论两个部分。 1 2. 软件开发方法的演进  SP DOP PAM
  10. 统计每个url访问的topN用户以及访问次数(sql)
  11. 新颖的自我介绍_新颖的自我介绍6篇
  12. Audi A4L楼兰宝盒拆解图
  13. 由键盘输入正数n,要求输出如下2*n+1行的菱形图案。用c语言实现。
  14. gitbook 使用粘自csdn
  15. delphi 控件大全(确实很全)
  16. 可微硬件:AI将如何重振摩尔定律的良性循环
  17. “华为杯”山东理工大学第十一届ACM程序设计竞赛 E - 九连环
  18. 卡西欧将发布紧凑型G-SHOCK新品,为锻炼和日常使用提供便利
  19. AI也会“学坏”?都是人类捣的鬼!
  20. 22.1.30总结反思

热门文章

  1. pom文件报错_解决mac下tess4j文字识别报错问题
  2. vpc 网络隔离_专有网络(VPC)的六大应用场景
  3. stm32 交换机芯片_基于STM32的全链路语音交互 - stm32/stm8 - 电子工程世界
  4. 军转干部计算机测试题,2015福建军转干考试计算机基础知识:计算机网络
  5. 位运算判断奇偶数_位运算符判断奇偶
  6. 用 python 制作高逼格的数学动画
  7. CentOS 8 成为绝版!到底发生了什么?
  8. 为什么 HTTPS 是安全的?
  9. 实现自己的轻量级http调用工具
  10. 50行Python代码,教你获取公众号全部文章