The UTF-8 / wide conversion routines follow the pattern of the ANSI C conversion routines. These routines use the wchar_t type, which is two bytes on some systems and four bytes on others. The advantage to using the wchar_t type is that all the standard wide-character functions may be used on these strings, such as wcslen, wscat, etc.