Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Проблема с акси-кодом русских букв


Автор: Morozzz45 10.6.2010, 14:08
int ascii=(int)x[i];
Если буква русская - то ascii присваивается отрицательное число. Я решаю эту проблему так:
if(ascii<0) ascii=ascii+192; smile
Но, по-моему, это не выход... Не подскажете, в чем дело?

Автор: A5uKa 10.6.2010, 14:26
А почему это проблема ?
И почему не выход ?

Автор: Morozzz45 10.6.2010, 14:41
Хм, ну это, как мне кажется, не логичный и не действенный выход smile я все таки решаю проблему шифрования, и каждый символ(его код) должен оставаться нетронутым. Вот и возник вопрос smile

Автор: borisbn 10.6.2010, 15:00
сделай
Код

int ascii=(unsigned int)x[i];

Автор: A5uKa 10.6.2010, 15:44
не поможет ))

Автор: Morozzz45 10.6.2010, 16:46
Пробовал smile итог - не помню что, но явно что то неправильное, потому что я был расстроен))

Автор: borisbn 10.6.2010, 17:03
sorry, нужно было так:
Код
int ascii=(unsigned char)x[i];

Автор: Ins3t 10.6.2010, 23:20
Для извращенцев: 

Код

int ascii = (((int)x[i])&0xFF);

 smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)