当前位置: 首页 > article >正文

显示指定目录下的 .c 文件 Linux环境 C语言实现

问题:显示指定目录下的 .c 文件

算法:

        1. opendir ( ) 打开文件夹

        2. readdir ( ) 读取文件名

        3. 通过字符串比对找出 .c 文件并打印输出

        4. closedir ( ) 关闭文件夹

代码:

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

int main(int argc,char* argv[]){
    DIR *pd = NULL;
    struct dirent *pitem = NULL;
    char *p = NULL;
    int len = 0;
    if(argc < 2){
        printf("The argument is too few.\n");
        return 1;
    }
    pd = opendir(argv[1]); // 打开文件夹
    pitem = readdir(pd); // 读取
    while(pitem != NULL){
        if(pitem->d_type == DT_REG){ // 如果是常规文件
            len = strlen(pitem->d_name); // 获取文件名长度
            if(len >= 2){
                p = pitem->d_name + len - 1 - 1;// 定位到倒数第二个字符
                if(strcmp(p,".c") == 0) // 找出文件结尾是.c的文件
                    printf("%s\n",pitem->d_name); // 打印输出
            }
        }
        pitem = readdir(pd);
    }

    closedir(pd);
    pd = NULL;

    return 0;
}

输出:

p.s. 省略 gcc 编译过程   , ./ 表示 当前文件夹


http://www.kler.cn/news/363751.html

相关文章:

  • gin入门教程(9):路由分组与路由版本控制
  • 【机器学习】VQ-VAE(Vector Quantized Variational Autoencoder)
  • ProtoBuf 的含义和安装
  • PHP养老院管理系统-计算机设计毕业源码-00115
  • ReactOS系统中平衡二叉树,在一个空间中寻找与给定地址范围重合或部分重合的(已分配)区间
  • 【2024】【字节青训营】:字节青训营入营测试题——Java版本(已提交通过)
  • 解释 RESTful API,以及如何使用它构建 web 应用程序。
  • 0 Day漏洞利用激增:谷歌Mandiant警示新安全趋势
  • 【springboot应用-RestTemplate】
  • RHCE--nginx实现多IP访问多网站
  • 形式架构定义语言(ADL)
  • React综合指南(二)
  • Threejs 实现3D 地图(02)创建3d 地图
  • 【python】sorted() list.sort()
  • LeetCode300:最长递增子序列
  • 【网络安全】简单P1:通过开发者工具解锁专业版和企业版功能
  • PostgreSQL DBA月度检查列表
  • 05 go语言(golang) - 常量和条件语句
  • C++(标准输入输出流、命名空间、string字符串、引用)
  • 怎么快速在ppt中添加文本框?2个常用的ppt使用技巧盘点!
  • 【Linux实验】拆分文件命令
  • 【zookeeper】集群配置
  • MySQL的 Next-Key Lock 底层原理详解
  • Leetcode 赎金信
  • Matlab|基于氢储能的热电联供型微电网优化调度方法
  • WebGL 添加背景图