Re: isset и кириллица
От: Stanislav V. Zudin Россия  
Дата: 15.07.11 08:55
Оценка:
Здравствуйте, enji, Вы писали:

E>
E>#include <cctype>

E>int main()
E>{
E>  const char *t = "Одобрено";
E>  isspace(*t);  //******
E>  return 0;
E>}
E>


E>В помеченной строке на MSVC Express 10 вылетает assert (unsigned)(c+1)<=256


E>код 'О' — -50, соответственно приведение к unsigned дает чего-то большое. Но я вроде не слышал, что isspace требует только ascii-диапазона.

E>Или я не прав?

E>Насколько я понял, isspace работает с дефолтной локалью, возможно надо установить другую локаль?


Полагаю, этого будет достаточно:

isspace((unsigned char)*t);
_____________________
С уважением,
Stanislav V. Zudin
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.