C言語の標準ライブラリmbrtowcのリファレンスです。
概要 | 多バイト文字をワイド文字に変換する。 |
ヘッダ | #include <wchar.h> |
I/F | size_t mbrtowc(wchar_t * restrict pwc, const char * restrict s, size_t n, mbstate_t * restrict ps); |
戻り値 | 次のn個以下のバイトによってナルワイド文字に対応する多バイト文字が完結する場合は0。それ以外で、次のn個以下のバイトによって正しい多バイト文字が完結する場合は、多バイト文字を完結するバイト数。それ以外で、次のn個のバイトだけでは多バイト文字が完結せず、かつn個のバイトすべてが処理されている場合は-2。それ以外で、表現形式エラーが発生する場合は-1。 |
詳細 | mbrtowc関数は、sが空ポインタならば、mbrtowc(NULL, "", 1, ps)と同じである。sが空ポインタでないならば、mbrtowc関数は、sが指すバイトで始まる最大nバイトを走査し、次の多バイト文字を完結するために必要な、シフトシーケンスを含めたバイト数を計算する。次の多バイト文字が完結し、かつそれが正しいならば、対応するワイド文字の値を求める。次に、pwcが空ポインタでなければ、pwcが指すオブジェクトにその値を格納する。対応するワイド文字がナルワイド文字ならば、結果の状態は初期変換状態である。 |