Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.96
Mr. Pyatachok
8 / 8 / 0
Регистрация: 30.06.2011
Сообщений: 250
#1

Сделать преобразование unsigned char в char, а затем типу int - C++

03.03.2012, 01:40. Просмотров 3620. Ответов 4
Метки нет (Все метки)

Здраствуйте, есть вопрос:
Число представлено двумя полями: типа long для рублей и unsigned char - для копеек.

Собственно что мне делать: хочется сделать преобразование unsigned char в char, а затем типу int.
При этом потеря в точности будет, если будуц дальше работать с long и int?
Подскажите пожалуйста, как перевести в char?

Или предложите что-нибудь другое))
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.03.2012, 01:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сделать преобразование unsigned char в char, а затем типу int (C++):

Vector<unsigned char> в int - C++
есть vector&lt;unsigned char&gt; размером 4 байта..и мне надо перевести их в 1 число типа int. т.е. типо int command = tempN.data(); но ...

Как массив char[4] перевести в unsigned int? - C++
Есть массив из 4х char символов (4-е байта), нужно его перевести в unsigned int. Я сделал втупую: unsigned int B=0; ...

Приведение типов unsigned char[2] to unsigned char [64] - C++
Добрый день! Подскажите пожалуйста, как поступить. Есть простая функция main int main() { SHA1Context sha; uint8_t...

Реализация функции char *padl(const char *string, int len, int c=' ') - C++
Реализовать функцию возвращающую указатель на новую строку длины len, полученную из string либо удалением лишних символов слева , либо...

Преобразования массива с типа int к типу char - C++
Помогите решить задачу. Требуется создать шаблон класса для преобразования массива с типа int к типу char, помогите кто чем сможет буду...

Std::fstream почему функция write принимает параметр char* а не unsigned char* (аля byte*) ? - C++
Ну собственно сабж... std::fstream fs; fs.write((char*)..) В случае бинарного потока я допустим пишу байты функцией write, как...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Bredorub
5 / 5 / 0
Регистрация: 16.01.2011
Сообщений: 94
03.03.2012, 06:36 #2
Даю подсказку: посмотри десятичный код какого-нибудь символа в таблице ASCII и сравни его со значением, которое получается после присваивания этого символа переменной типа long. Это все, что тебе нужно.
0
Toshkarik
1141 / 858 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
03.03.2012, 07:02 #3
А не проще сразу из unsigned char к int? Если при приведении к char в unsigned char не будет числа больше 127 то все должно быть нормально.
0
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
03.03.2012, 07:07 #4
Цитата Сообщение от Mr. Pyatachok Посмотреть сообщение
Собственно что мне делать: хочется сделать преобразование unsigned char в char, а затем типу int.
При этом потеря в точности будет, если будуц дальше работать с long и int?
Подскажите пожалуйста, как перевести в char?
как уже сказали, лучше сразу переводить к типу, с которым будешь работать. Промежуточный перевод в char не нужен. Потерь в точности (при переводе в больший тип) не будет. Явный перевод делать не обязательно, компилятор сам сделает неявное приведение типов в арифметических операциях
0
Evg
Эксперт CАвтор FAQ
17802 / 6008 / 387
Регистрация: 30.03.2009
Сообщений: 16,511
Записей в блоге: 26
03.03.2012, 09:54 #5
Лучше скажи, что ты задумал
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.03.2012, 09:54
Привет! Вот еще темы с ответами:

Надо перевести переменную типа unsigned char* в signed int и обратно - C++
у меня есть переменная типа unsigned char*, мне нужно перевести ее в signed int , провести арифметические вычисления и затем перевести ее...

Размер для данных (int, char, long, double, short, unsigned, float) - C++
Напишите программу, которая будет определять размер для данных (int, char, long, double, short, unsigned, float) и выводить информацию (о...

Неверная конверсия из char* в unsigned char* - C++
Здравствуйте. Почему-то ловлю ошибку, гласящую о том, что не удалась конверсия из char* в *unsigned char*. Не понимаю, почему она вылазит?...

Преобразование char в int - C++
Решаю задачу из книги, требуется написать программу, которая запрашивает у пользователя степень и возводит в эту степень число, надо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.03.2012, 09:54
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru