mbtowc
|
ヘッダ
| #include <stdlib.h>
|
形 式
| int mbtowc (wchar_t * restrict pwc, const char * restrict s, size_t n);
|
機 能
| sが空ポインタでない場合、sが指すバイトから最大nバイトを検査して、次の多バイト文字が完了するまでの(シフトシーケンスも含む)バイト数を決定する。次の多バイト文字が正しく完了していれば、その多バイト文字に対応するワイド文字の値を決定する。
次に,pwcが空ポインタでない場合は、pwcが指すオブジェクトにこの値を格納する。対応するワイド文字がナルワイド文字である場合,この関数の状態は初期変換状態になる。
いかなるライブラリ関数も、本関数を呼び出さないかのように動作する。
|
返却値
|
- sが空ポインタである場合
- 多バイト文字の表現形式がシフト状態に依存していれば0以外の値を返し、そうでなければ0を返す。
- sが空ポインタでない場合
-
- sがナル文字を指す場合
- 0を返す。
- sがナル文字を指さない場合
- 続くn個以下のバイト列が正しい多バイト文字を形成するとき、その多バイト文字を構成するバイト数を返す。
- そうでない場合は-1を返す。
返却値が、nやマクロMB_CUR_MAXの値も,超えることはない。
|