unsigned short
массивы можно использовать со строками широких символов - например, если у вас есть тексты в кодировке UTF-16 - хотя я ожидаю увидеть wchar_t
в этих случаях. Но у них могут быть свои причины, например, совместимость между MacOS и Windows. (Если мои источники верны, MacOS 'wchar_t
составляет 32 бита, а Windows' - 16 бит.)
Вы конвертируете между двумя типами строк, вызывая соответствующую библиотечную функцию. Какая функция подходит, зависит от ситуации. SDK не входит в комплект?
И char
вместо unsigned char
, ну, все исторически всегда были определены с char
, поэтому переход на unsigned char
привел бы к несовместимости.
(Переход на signed char
также может привести к несовместимости, но не так много ...)
Редактировать Теперь вопрос отредактирован, позвольте мне сказать, что я не видел правок до того, как набрал свой ответ. Но да, UInt16
является лучшим представлением 16-битного объекта, чем wchar_t по вышеуказанной причине.