MENU

【C言語】文字列の文字数をカウントする方法を解説

この記事では、C言語で文字列の文字数をカウントするための3つの方法を解説します。

目次から探す

文字列の文字数をカウントする方法

文字列の文字数をカウントする方法には、いくつかの方法があります。

方法1: ループを使った方法

この方法では、文字列の各文字を順番に調べていき、カウンターを使って文字数を数えます。

以下にサンプルコードを示します。

#include <stdio.h>
int countCharacters(char str[]) {
    int count = 0;
    int i = 0;
    while (str[i] != '\0') {
        count++;
        i++;
    }
    return count;
}
int main() {
    char str[] = "Hello, World!";
    int length = countCharacters(str);
    printf("文字列の文字数: %d\n", length);
    return 0;
}

上記のコードでは、countCharacters関数を定義しています。

この関数では、whileループを使って文字列の各文字を調べ、カウンターをインクリメントしています。

ループが終了すると、カウンターの値が文字列の文字数となります。

方法2: 組み込み関数を使った方法

C言語には、文字列の長さを取得するための組み込み関数であるstrlenがあります。

この関数を使うと、簡単に文字列の文字数を取得することができます。

以下にサンプルコードを示します。

#include <stdio.h>
#include <string.h>
int main() {
    char str[] = "Hello, World!";
    int length = strlen(str);
    printf("文字列の文字数: %d\n", length);
    return 0;
}

上記のコードでは、strlen関数を使って文字列の長さを取得しています。

strlen関数は、引数として渡された文字列の長さを返します。

方法3: ポインタを使った方法

この方法では、ポインタを使って文字列の各文字を順番に調べていき、カウンターを使って文字数を数えます。

以下にサンプルコードを示します。

#include <stdio.h>
int countCharacters(char *str) {
    int count = 0;
    while (*str != '\0') {
        count++;
        str++;
    }
    return count;
}
int main() {
    char str[] = "Hello, World!";
    int length = countCharacters(str);
    printf("文字列の文字数: %d\n", length);
    return 0;
}

上記のコードでは、countCharacters関数を定義しています。

この関数では、ポインタを使って文字列の各文字を調べ、カウンターをインクリメントしています。

ループが終了すると、カウンターの値が文字列の文字数となります。

以上が、C言語で文字列の文字数をカウントするための3つの方法です。

それぞれの方法には特徴がありますので、状況に応じて適切な方法を選択してください。

目次から探す