21xrx.com
2024-11-22 13:33:54 Friday
登录
文章检索 我的文章 写文章
使用C语言创建多级目录
2023-06-18 11:27:09 深夜i     --     --
C语言 多级目录 Unix 递归算法 mkdir函数

在Unix或Linux操作系统中,可以使用C语言创建多级目录。通过使用mkdir函数和递归算法来实现。递归算法是指函数调用自身的算法,它能够按照一定的规则重复地执行相同的操作,直到达成预定的目的。

为了创建多级目录,需要先确定目录结构,然后逐层创建目录。假设要创建的目录结构为:/home/user1/dir1/dir2/dir3,可以通过以下代码实现:


#include

#include

#include

void make_dir(char* path){

  struct stat st = {0};

  if (stat(path, &st) == -1) {

    mkdir(path, 0700);

  }

}

void make_dirs(char* path){

  char* str = path;

  while (*str != '\0'){

    if (*str == '/'){

      *str = '\0';

      make_dir(path);

      *str = '/';

    }

    str++;

  }

  make_dir(path);

}

int main(){

  char* path = "/home/user1/dir1/dir2/dir3";

  make_dirs(path);

  return 0;

}

在以上代码中,make_dir函数用于创建单个目录,make_dirs函数用于创建多级目录,main函数则是测试代码。通过将路径字符串按照"/"分割,逐层创建目录。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复