c语言字符串replace函数如何用
C语言没有内置的字符串replace函数,但可以自己编写一个函数来实现字符串替换的功能。下面是一个示例的字符串替换函数的代码:
#include <stdio.h>
#include <string.h>
void replace(char *str, const char *old, const char *new) {
char *p = strstr(str, old); // 在str中查找old的出现位置
if (p != NULL) { // 如果找到了
size_t old_len = strlen(old);
size_t new_len = strlen(new);
size_t str_len = strlen(str);
size_t tail_len = str_len - (p - str) - old_len; // 原字符串尾部的长度
if (new_len > old_len) { // 如果新字符串比旧字符串长
memmove(p + new_len, p + old_len, tail_len + 1); // 将尾部的字符后移
} else if (new_len < old_len) { // 如果新字符串比旧字符串短
memmove(p + new_len, p + old_len, tail_len); // 将尾部的字符后移
p[str_len - old_len + new_len] = '