LINUX.ORG.RU

История изменений

Исправление Legioner, (текущая версия) :

а что не так с ними?

С однобитовыми — их не хватает для юникода.

С wchar_t — во-первых не гарантируется, что он 4-байтовый (т.е. его уже заранее не хватает на все символы и он сходу подхватывает все проблемы однобайтовых API), во-вторых он бессмысленно транжирит место в оперативной памяти. Ну и опять же API непонятно чему соответствует. У юникода каждый год новый стандарт и непонятно, на что рассчитывать.

ну, если не учитывать кодировочную волокиту с вытекающими

С кодировками волокиты никакой нет, на самом деле. UTF-8 это крайне примитивная кодировка и её хватает для 90% случаев. Всё остальное — мало где используемая экзотика, в стандарте точно не нужно. Волокита скорее с юникодными базами данных, всякими классификациями — что есть буква, что есть цифра, что есть пробел и тд. Но дело нужное, от этого никуда не денешься.

Исходная версия Legioner, :

а что не так с ними?

С однобитовыми — их не хватает для юникода.

С wchar_t — во-первых не гарантируется, что он 4-байтовый (т.е. его уже заранее не хватает на все символы и он сходу подхватывает все проблемы однобайтовых API), во-вторых он бессмысленно транжирит место в оперативной памяти.

ну, если не учитывать кодировочную волокиту с вытекающими

С кодировками волокиты никакой нет, на самом деле. UTF-8 это крайне примитивная кодировка и её хватает для 90% случаев. Всё остальное — мало где используемая экзотика, в стандарте точно не нужно. Волокита скорее с юникодными базами данных, всякими классификациями — что есть буква, что есть цифра, что есть пробел и тд. Но дело нужное, от этого никуда не денешься.