unix 下的 mkdir 函数只能在一个已经存在的目录下创建一个子目录,而常见的情况是创建一个多级目录,就像 shell 中的 mkdir -p
一样。看过工作中的不少实现,感觉不够简洁和清晰,于是找到了这个实现(链接:sharp2wing),应该可以了。
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <unistd.h>
#include <sys/stat.h>
#define RWXRR (S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IROTH)
int make_path(const char *path, mode_t mode)
{
char
… Read the rest