linux C获取给定路径的父目录

 

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <string.h>
 4 #include <libgen.h>
 5 
 6 int main(int argc, char*argv[])
 7 {
 8     char *dirc, *basec, *bname, *dname;
 9     char *path = "/data1/peifx/nfs/coredumpBx11";
10 
11     dirc = strdup(path);
12     basec = strdup(path);
13     dname = dirname(dirc);
14     bname = basename(basec);
15 
16     printf(" path:%s\n dirc:%s\n basec:%s\n dname:%s\n bname:%s\n", path, dirc, basec, dname, bname);
17 
18     return 0;
19 }

 

注意:
使用dirname(),basename()时,要拷贝一份源路径。会修改原路径字符串。

posted @ 2022-07-11 17:30  墨尔基阿德斯  阅读(377)  评论(1编辑  收藏  举报