函数原型使用man 3 basename可以查看到. 从中可以看出,这个函数和dirname函数联系非常紧密.

下面是相关的源码示例

//gcc -g basename_demo.c -o basename_demo

//

#include

#include

#include

#include

int main(int argc, char* argv[]){

char* p;

//p = basename("htttp://www.youku.com/1.mp4/");

//p = basename("htttp://www.youku.com/1.mp4/"); //会有段错误

p = basename("htttp://www.youku.com/1.mp4?start=0&end=90");

printf("%s\n", p);

//这是官网的例子

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);

free(dirc);

free(basec);

return 0;

}

测试中发现,如果路径不加上文件名, 就会报段错误; 如果文件名后面有参数之类的,还是会照常解析出来.参看下面的截图.

源码中给出的man中的例子的效果如图:

参考文献

basename函数 linux,Linux C中的basename函数用法示例相关推荐

  1. python自带的sum()函数和numpy库中的sum()函数的区别

    在学习<机器学习实战>一书的第十章时,对 return np.sqrt(sum(np.power(vecA - vecB, 2))) 这样一条语句输出的结果老是不对,明明想要输出的是对两个 ...

  2. java中函数的调用,java中如何调用函数

    java动态调用函数,Java 中使用动态代码,java函数调用,java中如何调用函数 如何在 Java 中调用 C 函数 宗薇 [期刊名称]<网络新媒体技术> [年(卷),期]2000 ...

  3. MYSQL中的REPLACE函数,以及Hive中的regexp_replace的用法

    MYSQL中的REPLACE函数,以及Hive中的regexp_replace的用法 一.repacle是什么? 二.使用步骤 1.实践是检验真理的唯一标准 2.Hive中的替换函数regexp_re ...

  4. php this指针的用法,C#_C#中this指针的用法示例,本文实例展示了C#中this指针的 - phpStudy...

    C#中this指针的用法示例 本文实例展示了C#中this指针的用法,对于初学者进一步牢固掌握C#有很大帮助,具体内容如下: 一.this指针是什么: 这里有一些面向对象编程的概念需要说明:类(Cla ...

  5. ftok file php,Linux和PHP中的ftok函数返回值不一致问题跟踪

    在IPC中中,我们经常事情ftok函数来获取key,来作为获取消息队列id.共享存储标识和信号量ID.在项目中使用了php进程和linux进程通信,采用了消息队列的方式,但是结果表现为php中的fto ...

  6. C语言中比较大小的函数模板,C语言中实现模板函数小结 : 不敢流泪

    --by boluor 2009/5/20 如果要写个函数支持多种数据类型,首先想到的就是C++的模板了,但是有时候只能用C语言,比如在linux内核开发中,为了减少代码量,或者是某面试官的要求- 考 ...

  7. c语言中存储字符用什么函数,那些C语言中你不知道的字符串函数(坑)

    1.strcpy() 在字符串拷贝函数中,它的函数编写不难,如下 char* Strcpy(char* dest, const char* src) { assert(dest != NULL &am ...

  8. oracle迁移mysql视图中函数问题,mysql中to_char自定义函数。

    迁移到mysql中会遇到函数迁移问题,我们可以自定义函数 DELIMITER $$ CREATE FUNCTION new_data_report.to_char(Intnumber int) RET ...

  9. matlab messagebox函数,[MATLAB]在C#中引用MATLAB函数

    环境:VS2017+MATLAB R2017a ①打开上次我们生成的BPClass.cs文件(目录:~//bin/BP/for_testing),得在C#程序中引用生成的dll文件(目录:~//bin ...

  10. python中匿名函数的作用_Python 中的匿名函数,你会用吗

    原标题:Python 中的匿名函数,你会用吗 概念 我们从一个例子引入. 这里有一个元素为非空字符串的列表,按字符串最后一个字母将列表进行排序.如果原列表是 ['abc', 'g', 'def'],则 ...

最新文章

  1. Spring Security 源码分析:Spring Security 授权过程
  2. 注册app短信验证平台_短信验证码平台能免费测试吗?怎么测试?
  3. J2EE项目工具集(转)
  4. 避免重蹈欧美“超级电厂”覆辙 瑞星全力保障国内电力行业信息安全
  5. 【收藏】mydockfinder下载地址
  6. BLE 蓝牙网关与蓝牙定位
  7. 可消费消息数量_战疫情!CKafka助力腾讯课堂百万消息实现稳定互动
  8. MindSpore21天实战营丨基于MindSpore的ResNet-50蘑菇“君”的识别应用体验
  9. 阿里云播放器进度条拖拽
  10. 自媒体运营,你要的小工具来了
  11. SQL行列转换-sum函数的妙用
  12. aria2最新tracker服务器,【无灯+Hiboy】padavan下自动更新aria2的BT tracker 服务器列表...
  13. 关于Oracle parallel(并行)的几个基本常识
  14. EXCEL2016设置下拉选项,图文说明
  15. 设计模式读书笔记汇总
  16. 自我提升解决bug的能力(一)
  17. qq公众平台出错了609_微信附近人功能无法使用,到底是平台出了差错还是由于自我原因。...
  18. 机器学习图像分割——模型评价总结(含完整代码)
  19. 为什么淘宝搜索宝贝排名先后不一样,原理是什么?
  20. Hadoop数据工程师_大数据Hadoop技术好学吗

热门文章

  1. css 文本隐藏,CSS隐藏文字的几个方法
  2. mac上优秀的代码编辑软件Sublime Text 3
  3. VBS 的回车换行符
  4. 累计核准率与累计违约率
  5. 关于《Python 从入门到实践》Django 创建学习主页 网站响应出现“Template-loader postmortem”的解决方法
  6. 判断一个IP是否属于中国地区
  7. 分享收集的WebGL 3D学习资源
  8. Java生成Excel表格数据的两种方式(Easy Excel和SXSSFWorkbook)以及测试方法
  9. 关于互联网营销的一些思考
  10. Python 从后往前每隔三个数字加一个逗号的方法