"); //-->
除非你的原件考虑跨平台。
在linux编程多使用一些系统函数真的很方便,哎没办法越来越懒~~~~~~
今天记录一下dirname 和basename这两个简单的处理文件路径的linux系统函数。
头文件:
#include <libgen.h>
函数定义:
char *dirname(char *path); //注意这里,最终会修改path 的值,使其变成目录名
char *basename(char *path);
功能描述:
char *dirname(char *path);
功能: 截取path中的目录路径返回。
char *basename(char *path);
功能: 截取path中的去目录部分的最后的文件或路径名。
返回值:
char *dirname(char *path);
成功: 返回截取path中的目录路径指针。
失败: 返回 NULL
char *basename(char *path);
成功: 返回截取path中的去目录部分的最后的文件或路径名指针。
失败: 返回 NULL
示例图:
path dirname basename
"/usr/lib" "/usr" "lib"
"/usr/" "/" "usr"
"usr" "." "usr"
"/" "/" "/"
"." "." "."
".." "." ".."
代码示例:
char *dirc, *basec, *bname, *dname;
char *path = "/etc/passwd";
dirc = strdup(path);
basec = strdup(path);
dname = dirname(dirc);
bname = basename(basec);
printf("dirname=%s, basename=%s\n", dname, bname);
原文链接:https://blog.csdn.net/peter_cloud/article/details/9308333
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。