gpt4 book ai didi

c:从字符串中删除两个字符

转载 作者:行者123 更新时间:2023-11-30 17:56:39 26 4
gpt4 key购买 nike

我正在处理字符串:{()} 我的代码搜索第一个 ) 并替换它及其前面的字符 ( 带有空格,结果为 { }

我想要做的不是将匹配替换为空格,而是从字符串中删除括号,并使用我现有的代码再次递归地检查字符串。我正在尝试找到一种使用 memmove 或类似的方法来折叠剩余字符的方法

char openKey[] = "({<[";
char closeKey[] = ")}>]";
pch = strpbrk(parenthesesStack, closeKey);
while (pch != NULL)
{

if (opposits(*(pch-1),*pch)){
printf("%c %c\n" , *(pch-1), *pch);
memmove(pch-1," ",2);
}
pch = strpbrk (parenthesesStack,closeKey);
}

最佳答案

那么您想将字符串的其余部分向左移动 2 个位置?

试试这个:

    memmove(pch-1, pch+1, strlen(pch+1) + 1);

关于c:从字符串中删除两个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13347329/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com