A wide character is a value of type wchar_t representing exactly one character from an extended character set. It provides a character-oriented counterpart to multibyte strings, whose byte count does not directly reveal the number of printed characters. section 14.3
Converting multibyte text
The C interface converts multibyte text into wchar_t values with mbsrtowcs, while mbrtowc converts one multibyte character and accepts an mbstate_t parsing state. section 14.3
Use wide characters with these constraints:
- Preserve mbstate_t when parsing sequences whose characters may occupy multiple bytes. section 14.3
- Account for locale configuration when printing or interpreting multibyte characters. section 14.3
- Check implementation assumptions about wchar_t, Unicode code points, and basic character-code agreement. section 14.3
size_t mbsrtowcs(wchar_t*restrict dst, char const**restrict src,
size_t len, mbstate_t*restrict ps);
Inspect the standard conversion signature for transforming multibyte input into wide characters. section 14.3

