≫ ホーム ≫ C言語ヘッダファイル別一覧 | C言語アルファベット別一覧 ≫ wchar.h ≫ wcrtomb
ワイド文字 (wide character) を多バイト文字 (multibyte character) に変換します.
#include <wchar.h>
size_t wcrtomb ( char * restrict s, wchar_t wc, mbstate_t * restrict ps );
wcrtomb 関数は,まず wc で指定されるワイド文字に対応する多バイト文字を表現するために必要なバイト数 (シフトシーケンスを含める) を決定します.その後 s にその多バイト表現を格納します.※1
wc がナルワイド文字 (null wide character) の場合,ナル文字 ('\0') に変換します.この場合は変換状態 ps は初期変換状態になります.
wcrtomb 関数の動作は,その時点のロケール (locale) の LC_CTYPE カテゴリの影響を受けます.
※1: 配列 s に格納するバイト数 MB_CUR_MAX マクロのバイトを超えません.
※2: errno に EILSEQマクロの値を格納します.また変換状態 ps がどうなるかは未規定です.