linux c mkdir创建递归目录
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define err(msg) perror(msg)
static void mkdirs(const char *dir)
{
char tmp[1024];
char *p;
if (strlen(dir) == 0 || dir == NULL) {
printf("strlen(dir) is 0 or dir is NULL.\n");
return;
}
memset(tmp, 0, sizeof(tmp));
strncpy(tmp, dir, strlen(dir));
if (tmp[0] == '/' && tmp[1]== '/')
p = strchr(tmp + 2, '/');
else
p = strchr(tmp, '/');
if (p) {
*p = '\0';
mkdir(tmp,0777);
chdir(tmp);
} else {
mkdir(tmp,0777);
chdir(tmp);
return;
}
mkdirs(p + 1);
}
int main(void)
{
 
相关文档:
1) 使用的库不同。windows下图形开发一般用微软的MFC或.net库,而Linux下则常用qt库。C/C++通用库(c库,STL库)的接口相同,但内部实现不同。
2) 编译器不同。windows下用的是微软编译器VC或.net,而Linux下则用gcc。
3) 开发环境不同。windows的编译器自动生成makefile,而Linux则需要手动编写makefil ......
1) .tar
解压:tar xvf filename.tar
解压:tar xjvf filename.tar.bz2
解压:tar xzvf filename.tar.gz
打包:tar cvf filename.tar dirname1 dirname2
打包:tar czvf filename.tar.gz dirname1 dirname2
2) .gz和.Z
解压:gunzip filename.tar.gz
解压:gunzip filename.Z
打包:gzip  ......
本世纪第一个十年,即将过去。回顾以往,才能看清现在,我有几句话要说。
记得,在十年之前,人们只能玩玩美国红帽的 Linux 桌面(特别是 6.2 版本),整天 sudo (即 Super User do ),任凭激情泛滥。到了 2001 年 1 月, Linux 2.4 正式发布,首次支持 USB 和蓝牙技术,以及 ext ......
非常基本关于C语言的问题,一个信息类(计算机,资讯工程,电子工程, 通信工程)专业的本科毕业生应该达到的水平。题目不难,全部都能快速地答完,当然也需要一定的知识储备。
对于大多数人,我们预期你可能答错 3) 4) 15)题,所以答错3道以内的,我们认为你很棒
答错5道题以内,我们认为你还不错(你还可能答 ......