
如果你
#include <libgen.h>
对于dirname
您已经获得了POSIX,而不是GNU版本的basename(). (即使你
#define _GNU_SOURCE
据我所知,在C中没有条件导入.是否有gcc特定技巧?
解决方法 只需自己编写并给它一个不同于basename的名称.这种GNU坚持创建可以用1-3行编写的标准函数的替代不符合版本是完全蹩脚的.char *gnu_basename(char *path){ char *base = strrchr(path,'/'); return base ? base+1 : path;} 这样,您的程序也将更加便携.
总结以上是内存溢出为你收集整理的在C源代码中使用GNU版本的basename()和dirname()全部内容,希望文章能够帮你解决在C源代码中使用GNU版本的basename()和dirname()所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)