Linux c语言从全路径中截取除去文件名外的路径 5

Linux中c语言从全路径中截取除去文件名外的路径全路径如:D:\test\20181207.dll需要取到的值为:D:\test\怎么实现... Linux 中c语言从全路径中截取除去文件名外的路径
全路径如:D:\test\20181207.dll
需要取到的值为:D:\test\
怎么实现
展开
 我来答
yinfengnong
2018-12-14 · TA获得超过5619个赞
知道大有可为答主
回答量:2344
采纳率:89%
帮助的人:2290万
展开全部

代码如下:

#include <stdio.h>
#include <string.h>

int main()
{
        char s[] = "D:\\test\\20181207.dll";
        char *p;
        char s2[100];

        p = strrchr(s, '\\');

        if (p != NULL) {

                // 如果想复制到k另一个字符串,可以使用strncpy
                strncpy(s2, s, (p - s));
                printf("%s\n", s2);

                // 如果想在原字符串修改的话,可以给*p直接赋值\0
                *p = '\0';
                printf("%s\n", s);
        }

        return  0;
}

运行结果:

zcy990718
2018-12-14 · TA获得超过1.2万个赞
知道大有可为答主
回答量:1.2万
采纳率:66%
帮助的人:1524万
展开全部

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式