Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
presler
0 / 0 / 0
Регистрация: 16.12.2009
Сообщений: 3
1

дан массив char[22] как превратить отдельные байты в int, short

14.10.2010, 11:58. Просмотров 1044. Ответов 1
Метки нет (Все метки)

Дан массив char[22]. В нем содержатся на заранее определенных местах разные типы целых(int и short). Как их грамотно выделить в отдельные переменные? Например 1-2-3-4 = unsigned int; 5-6 = unsigned short; 7-8-9-10 = int; и т.д. Некоторые байты могут быть равны нулю.
Пытался сделать через std::stringstream, считывая потом побайтно из потока, но ничего не получилось, и еще приходил в голову неработающий костыль:
C++
1
2
3
4
5
6
7
8
    char a[6];
    a[0] = 0xee; a[1] = 0xff;
    a[2] = 0xfa; a[3] = 0xff; a[4] = 0xff; a[5] = 0xff;
    unsigned int z;
    unsigned short c;
    z = (a[2] * 256 * 256 * 256 +  a[3] * 256 * 256 +  a[4] * 256 +  a[5]);
    c = ( a[0] * 0x100 +  a[1]);
    std::cout << std::hex <<  c << ' ' << z;
На c-sharp знаю есть функции BinaryReader(MemoryStream).ReadInt16 и BinaryReader(MemoryStream).ReadInt32, вот что-нибудь бы такое.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2010, 11:58
Ответы с готовыми решениями:

Двоичный дамп short и char выводится как int
Доброго дня! Пытаюсь выводить двоичный дамп переменных char, short и int вот таким образом:...

Как превратить число из char в int ?
Здрасте всем... Начал я учится и тут же непонятки, помогите плиз. Как мне на самом простом С++...

Преобразование 2-х char в один short int
Пробую преобразовать 2 char в один short int таким образом: char buf; short int skl; int...

Char, short, int, long: какой тип выбрать?
Всем привет Читая книги по C++ столкнулся с тем, что везде пишут примерно одно и тоже. Допустим...

записать по-битого один short int в два char
Здрасьте, всем. Записать побитого два char в один short int это: char char1; char char2; short...

1
accept
4833 / 3255 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
14.10.2010, 12:28 2
memcpy()
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.10.2010, 12:28

Копировать байты из массива char в int
Добрый день Какими стандартными функциями это можно реализовать? Например, я получаю ответ с...

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

Создать объединение, что содержит элементы типов char int short fload long string
всем доброго времени суток! мне нужно создать объединение, что содержит элементы типов char int...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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