Здравствуйте oleg_m, Вы писали:
OM>Проблема:
OM>Необходимо обработать в VС++ текстовую unicode-строку, состоящую из всевозможных символов, включая как обычный пробел (и его 8 разновидностей 0x2000-0x200b, 0x3000), так и non-break space. Все пробелы кроме последнего ловятся обычной функцией isspace / iswspace. Но последний — никак не ловится. Ибо:
OM>в unicode-шрифтах он кодируется как 0x00A0 (), в windows-шрифтах — обычно как 0xA0, но не всегда.
OM>В шрифте Terminal, например, на этом месте стоит русская буква "а".
OM>Что делать?
OM>
А шрифт Terminal — вообще в OEM-кодировке.
Раз в задании сказано "юникодную строку" — то с Юникодом работать и надо.
А в случае ввода текста, набранного неким шрифтом (в некой кодировке) — сначала привести к Юникоду.