我有一个字符串,我正试图找出它是否是另一个单词中的子字符串。
例如(伪代码)

say I have string "pp"

and I want to compare it (using strncmp) to

happy
apples
pizza

and if it finds a match it'll replace the "pp" with "xx"
changing the words to

haxxles
axxles
pizza

这可以用strncmp吗?

最佳答案

不是直接用strncmp,但你可以用strstr

char s1[] = "happy";

char *pos = strstr(s1, "pp");
if(pos != NULL)
    memcpy(pos, "xx", 2);

只有当搜索和替换字符串的长度相同时,此选项才起作用。如果没有,则必须使用memmove并可能分配一个更大的字符串来存储结果。

关于c - 使用strncmp c风格的字符串函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14793788/

10-17 02:43