C言語の文字列の長さを自分で数える方法は何ですか?

C言語では、文字列の長さを取得するにはstrlen()関数を使用できます。strlen()関数は、文字列の長さを表すsize_t型の値を返し、文字列の終端の空文字’\0’は含まれません。

以下はサンプルコードです。

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

int main() {
    char str[100];
    printf("请输入一个字符串:");
    fgets(str, sizeof(str), stdin);

    // 使用strlen()函数获取字符串长度
    size_t length = strlen(str);

    printf("字符串的长度为:%zu\n", length);

    return 0;
}

上記のコードでは、fgets()関数が標準入力(キーボード)から1行の文字列を読み取り、str配列に格納されます。その後、strlen()関数を使用してstr文字列の長さを取得し、その長さの値をlength変数に保存します。最後に、printf()関数を使用して文字列の長さを表示します。

注意すべきは、strlen()関数は、NULL文字’\0’で終わる文字列の長さだけを計算するため、文字列が’\0’で終わっていない場合、strlen()関数の動作が定義されない可能性があるということです。したがって、strlen()関数を使用して文字列の長さを計算する前に、文字列が既に’\0’で終わっていることを確認してください。

bannerAds