我在 c 中有一个子字符串问题。它没有正确更改子字符串。它必须找到 foo 并将其替换为其他东西,但它不能更改它。它只是更改了 'o' 部分。请帮忙。
#include <stdio.h>
#include <string.h>
char *replace(char *s, char old, char newer)
{
char *p = &s[0];
while(*p)
{
if(*p == old)
*p = newer;
p++;
}
return s;
}
int main()
{
char mystr[250];
printf("enter ");
gets(mystr);
puts(replace(mystr, 'foo', 'bars'));
return 0;
}