简体   繁体   English

如何在C中删除字符串的最后一部分

[英]How to delete last part of string in C

I need a certain part of the string for example I have我需要字符串的某个部分,例如我有

folder1/folder2/folder3/folder4

and I don't want folder4 in my new string so it should be like folder1/folder2/folder3我不想在我的新字符串中folder4所以它应该像folder1/folder2/folder3

any help would be appreciated I searched for strtok and strchar but I couldn't figure out how to achieve this任何帮助将不胜感激我搜索了 strtok 和 strchar 但我无法弄清楚如何实现这一目标

Find the last occurance of / using strrchr() and then replace it with \\0 .使用strrchr()查找/的最后一次出现,然后将其替换为\\0

int main()
{
    char string[] = "folder1/folder2/folder3/folder4";
    char character = '/'; 
    char* ptr = strrchr(string, character);
    *ptr = '\0';
    cout<<string;
    return 0;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM