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’で終わっていることを確認してください。