strlen関数 - 文字列の長さを取得する

文字列の長さを取得するにはstrlen関数を使用します。string.hを読み込むと、strlen関数を使用できます。

#include <string.h>
size_t strlen(const char *s);

C言語では文字列は「\0」で終わるという約束事があります。strlen関数は、この約束事を前提として、文字列の長さを計算します。つまり、「\0」が見つかるまで、ループして、文字数をカウントしていくということです。逆にいえば、文字列が「\0」で終わっていない場合は、意図しないメモリ領域まで進み、バッファオーバーランが起こります。

strlenを使う場合は、文字列が「\0」で終わる文字列に対して使用していることを必ず確認してください。

strlen関数で、文字列の長さを求めるサンプルです。

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

int main(void) {
  const char* string = "Hello";
  
  int32_t string_length = strlen(string);
  
  printf("%d\n", string_length);
}

出力結果です。

5

関連情報