#navi(contents-page-name): No such page: 文字列

指定した文字列に置換するCサンプルコード

指定した文字を指定した文字に置換するCサンプルコードを紹介します。

c-top.html is not found or not readable.

関連記事

置換関数

本Cサンプルコードでは、strrep関数を作成しています。
strrepの仕様は以下の通りです。

置換関数のCサンプルコード

&ref(): File not found: "strrep.c" at page "文字列/文字列置換のCサンプルコード"; (改行コードLF)

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

int strrep(char *src, char *before, char *after)
{
    char *p = NULL;
    int i = 0;

    if(strlen(before) != strlen(after)) { return -1; }

    p = strstr(src, before);
    while (p != NULL) {
        strncpy(p, after, strlen(after));
        p = p + strlen(after);
        i++;
        p = strstr(src, before);
    }

    return i;
}

int main(void)
{
    char s[] = "abcdefabcdefabcdefabcdef";
    int i;

    printf("BEFORE: %s\n", s);
    i = strrep(s, "abc", "ABC");
    if (i != -1) {
      printf("AFTER:  %s\n", s);
      printf("Number of Convert : %d\n", i);
    }

    return 0;
}

以下、コンパイルし実行した時の結果です。

$ gcc strrep.c -o strrep
$ ./strrep 
BEFORE: abcdefabcdefabcdefabcdef
AFTER:  ABCdefABCdefABCdefABCdef
Number of Convert : 4

以上、文字列置換のCサンプルコードでした。

c-btm.html is not found or not readable.

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS