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

2025-05-14 15:38:08
推荐回答(1个)
回答(1):

代码如下:

#include 
#include 

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

运行结果: