最終更新日時:
が更新

履歴 編集

<cwchar>

cwchar

<cwchar>ヘッダでは、ワイド文字 (wchar_t) の入出力・文字列操作・数値変換と、マルチバイト文字とワイド文字の変換のための機能を定義する。これらの機能は、std名前空間に属することを除いてC言語の標準ライブラリ<wchar.h>ヘッダと同じである(ただしwchar_t型は宣言しない)。

名前 説明 対応バージョン
size_t 符号なし整数型
mbstate_t マルチバイト文字とワイド文字の変換状態を保持する型
wint_t ワイド文字とファイル終端 (WEOF) を表現できる整数型
tm 日時を保持する構造体型(<ctime>で定義される型の宣言)

マクロ

名前 説明 対応バージョン
NULL ヌルポインタ定数に展開されるマクロ
WCHAR_MAX wchar_t型の最大値
WCHAR_MIN wchar_t型の最小値
WEOF ワイド文字ストリームの終端を表すwint_t型の定数
__STDC_VERSION_WCHAR_H__ <cwchar>が提供するC標準ライブラリ機能のバージョン (202311L) C++26

書式付き入出力

名前 説明 対応バージョン
wprintf 書式を指定して標準出力に出力する
wscanf 書式を指定して標準入力から入力する
fwprintf 書式を指定してファイルストリームに出力する
fwscanf 書式を指定してファイルストリームから入力する
swprintf 書式と文字数を指定して、ワイド文字列領域に出力する
swscanf 書式を指定してワイド文字列領域から入力する
vwprintf 可変引数リストva_listを使用し、書式を指定して標準出力に出力する
vwscanf 可変引数リストva_listを使用し、書式を指定して標準入力から入力する C++11
vfwprintf 可変引数リストva_listを使用し、書式を指定してファイルストリームに出力する
vfwscanf 可変引数リストva_listを使用し、書式を指定してファイルストリームから入力する C++11
vswprintf 可変引数リストva_listを使用し、書式を指定してワイド文字列領域に出力する
vswscanf 可変引数リストva_listを使用し、書式を指定してワイド文字列領域から入力する C++11

文字単位の入出力

名前 説明 対応バージョン
getwchar 標準入力から1文字入力する
getwc ファイルストリームから1文字入力する
fgetwc ファイルストリームから1文字入力する
fgetws ファイルストリームからN文字入力する
putwchar 標準出力に1文字出力する
putwc ファイルストリームに1文字出力する
fputwc ファイルストリームに1文字出力する
fputws ファイルストリームに文字列を出力する
ungetwc 入力ストリームに1文字戻す
fwide ストリームの入出力の単位(ワイド文字/マルチバイト文字)を設定・取得する

数値変換

名前 説明 対応バージョン
wcstod ワイド文字列をdouble型に変換する
wcstof ワイド文字列をfloat型に変換する C++11
wcstold ワイド文字列をlong double型に変換する C++11
wcstol ワイド文字列を、基数を指定してlong型に変換する
wcstoll ワイド文字列を、基数を指定してlong long型に変換する C++11
wcstoul ワイド文字列を、基数を指定してunsigned long型に変換する
wcstoull ワイド文字列を、基数を指定してunsigned long long型に変換する C++11

文字列操作

名前 説明 対応バージョン
wcslen 文字列の長さを取得する
wcscpy 文字列をコピーする
wcsncpy 文字数を指定して文字列をコピーする
wcscat 文字列を連結する
wcsncat 文字数を指定して文字列を連結する
wcscmp 文字列を比較する
wcsncmp 文字数を指定して文字列を比較する
wcscoll 現在のロケールに従って文字列を比較する
wcsxfrm ロケールに従った比較のために文字列を変換する
wcschr 文字列から文字を検索する
wcsrchr 文字列から文字を後方検索する
wcsstr 文字列から部分文字列を検索する
wcspbrk 文字列から、指定した集合に含まれる文字を検索する
wcsspn 文字列の先頭から、指定した集合に含まれる文字が続く長さを取得する
wcscspn 文字列の先頭から、指定した集合に含まれない文字が続く長さを取得する
wcstok 文字列を分割する
wcsftime 日時を書式化して文字列に出力する

メモリ操作

名前 説明 対応バージョン
wmemcpy 指定した文字数をコピーする
wmemmove 領域が重なっていてもよい形で、指定した文字数をコピーする
wmemcmp 指定した文字数を比較する
wmemchr 指定した文字数の中から文字を検索する
wmemset 指定した文字数を、指定した文字で埋める

マルチバイト文字とワイド文字の変換

名前 説明 対応バージョン
mbsinit 変換状態が初期状態であるかを判定する
mbrlen マルチバイト文字のバイト数を取得する
mbrtowc マルチバイト文字を、ワイド文字に変換する
wcrtomb ワイド文字を、マルチバイト文字に変換する
mbsrtowcs マルチバイト文字列を、ワイド文字列に変換する
wcsrtombs ワイド文字列を、マルチバイト文字列に変換する
btowc 1バイト文字を、ワイド文字に変換する
wctob ワイド文字を、1バイト文字に変換する

備考

  • これらの関数名の末尾や中間にあるrは、変換状態を引数として受け取る「再入可能 (restartable)」なバージョンであることを表す。<cstdlib>mblen()などのように内部状態をもつ関数と異なり、複数のスレッドから安全に使用できる

関連項目

参照