溫馨提示×

c語言strreplace函數(shù)怎么使用

小億
117
2024-02-27 12:46:49
欄目: 編程語言

在C語言中,沒有內(nèi)置的strreplace函數(shù)來替換字符串中的子字符串。您需要自己編寫一個(gè)函數(shù)來實(shí)現(xiàn)這個(gè)功能。以下是一個(gè)示例函數(shù)來替換字符串中的子字符串:

#include <stdio.h>
#include <string.h>

void strreplace(char *str, const char *sub, const char *replace) {
    char result[1000];
    char *p = strstr(str, sub);

    if (p == NULL) {
        return;
    }

    strncpy(result, str, p - str);
    result[p - str] = '\0';
    sprintf(result + (p - str), "%s%s", replace, p + strlen(sub));

    strcpy(str, result);
}

int main() {
    char str[1000] = "Hello, world!";
    char sub[] = "world";
    char replace[] = "C programming";

    printf("Before: %s\n", str);
    
    strreplace(str, sub, replace);

    printf("After: %s\n", str);

    return 0;
}

在這個(gè)示例中,我們定義了一個(gè)strreplace函數(shù)來實(shí)現(xiàn)替換字符串中的子字符串的功能。在main函數(shù)中,我們首先打印出原始字符串,然后調(diào)用strreplace函數(shù)來替換"world"為"C programming",最后打印出替換后的字符串。您可以根據(jù)需要修改字符串和子字符串來測試該函數(shù)。

0