🔧 文字列 ・ string.h ・ C89
strlen の使い方size_t strlen(const char *s);
文字列の終端\0を除いた文字数(バイト数)を返す。文字列の長さ分だけ先頭から走査するためO(n)であり、ループの条件式などで何度も呼ぶと性能劣化の原因になる。 文字列のバイト数がそのまま欲しい場面(例えばバッファ確保のサイズ計算)で頻出する基本関数。
#include <stdio.h>
#include <string.h>
int main(void) {
printf("%zu\n", strlen("hello"));
return 0;
}
⚠️ 終端の\0が無い文字配列に対して呼ぶと、範囲外を読み続けて未定義動作になる。
アプリの関数リファレンスで引く(無料・登録不要) 関数一覧へ
strlen と一緒に使う関数memcmp
memcpy
memmove
memset
memset_explicit
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strdup
strerror
strncat
strncmp
strncpy
もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。