As specified in C99 (and maybe earlier), if the macro __STDC_ISO_10646__ is defined, then wchar_t values are ucs4. Otherwise, wchar_t is an opaque type and you can't be sure what it is.
Noah On Mon, Mar 01, 2004 at 11:13:58 -0800, Rick Cameron wrote: > Hi, all > > This may be an FAQ, but I couldn't find the answer on unicode.org. > > It seems that most flavours of unix define wchar_t to be 4 bytes. If the > locale is set to be Unicode, what's in a wchar_t string? Is it UTF-32, or > UTF-16 with the code units zero-extended to 4 bytes? > > Cheers > > - rick cameron