ワイド文字 (wide character) とは 1 文字あたりのバイト数を 1 バイトより多くした文字のことをいいます. C言語では wchar_t 型で表すことのできる文字をワイド文字といいます.
ワイド文字によく似た文字表現に多バイト文字 (multibyte character) があります.多バイト文字も 1 文字を 1 バイト以上で表しますが,文字のサイズは文字によって可変です.したがって wchar_t 型で表すことができません.
ちなみにワイド文字は JIS X3010 では以下のように定義されています.
型 wchar_t のオブジェクトに収まり,その時点のロケール (locale) での任意の文字を表現できるビット表現.
リテラル
ワイド文字のリテラルは先頭に "L" をつけることで表現します.
wchar_t wc = L'w';
ナルワイド文字 (null wide character) とはすべてのビットが 0 であるワイド文字をことをいいます.
リテラル
ナルワイド文字のリテラルはワイド文字と同様に先頭に "L" をつけることで表現します.
wchar_t nwc = L'\0';
ワイド文字列 (wide string) とは,連続したワイド文字の並びのことをいいます.ワイド文字列は終端をナルワイド文字で表します.
リテラル
ワイド文字列のリテラルはワイド文字と同様に先頭に "L" をつけることで表現します.
wchar_t ws[] = L"Snoopy";