トップページ – C言語編 – 標準ライブラリのリファレンス(名前順)
トップページ – C言語編 – 標準ライブラリのリファレンス(ヘッダ別)
概要 |
マルチバイト文字のバイト数を調べる。 |
|
ヘッダ | ||
形式 |
int mblen(const char* s, size_t n); |
|
引数 |
s |
対象のマルチバイト文字を指すポインタ。 |
n |
調べる最大バイト数。 |
|
戻り値 |
引数s がヌルポインタでない場合は、引数s が指すバイトから、引数n
で指定したバイト数だけを調べ、それがマルチバイト文字として有効なバイト列であれば、マルチバイト文字を構成するバイト数を返す。有効なバイト列でなければ
-1 を返す。なお、引数s がヌル文字(‘\0’) を指している場合は 0
を返す。 |
|
詳細 |
バイト列がマルチバイト文字を構成しているものと考え、そのマルチバイト文字が必要としているバイト数を割り出す。調べる範囲は、引数
n
で指定したバイト数分だけである。マルチバイト文字が必要とする可能性がある最大バイト数は、ロケールによって異なるので、引数n
には MB_CUR_MAX
を指定することが多い。 |
|
注意 | ||
使用例 |
実行結果:
|
|
関連 |
再開可能な形でマルチバイト文字列の長さを調べる mbrlen関数がある。 |
|
解説章 |
本ページはアフィリエイトプログラムによる収益を得ています。
以下のリンクから商品を購入されると、Programming Place
管理者に紹介料が支払われています。
()
の前後の空白の空け方)(
の直後、)
の直前に空白を入れない)return 0;
を削除(C言語編全体でのコードの統一)解説中で C95 を(C89 に対して)特別扱いしないように修正。そもそもC言語編は C95ベースなので、余計な説明は省く。
「NULL」という表記を「ヌルポインタ」に修正。
全体的に文章を見直し修正。
新規作成。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
RSS | 管理者情報 | プライバシーポリシー |