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

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

Войти
Регистрация
Восстановить пароль
 
Shakior
1 / 1 / 0
Регистрация: 29.08.2015
Сообщений: 40
Завершенные тесты: 1
#1

Копировать байты из массива char в int - C++

22.12.2015, 14:42. Просмотров 319. Ответов 6
Метки нет (Все метки)

Добрый день
Какими стандартными функциями это можно реализовать? Например, я получаю ответ с сервера при помощи функции recv знаю, что в начале идет слово 5 символов чар, потом uint16_t(2 байта) и нужно эти 2 байта копировать в этот инт в том порядке как они идут, тк у меня литл ендиан и строка в литл ендиане.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2015, 14:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Копировать байты из массива char в int (C++):

дан массив char[22] как превратить отдельные байты в int, short - C++
Дан массив char. В нем содержатся на заранее определенных местах разные типы целых(int и short). Как их грамотно выделить в отдельные...

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

копировать элемент массива String в массив char - C++
Приветствую Вас, дорогие форумчане, помогите кто может в следующем вопросе, имеется массив String с одним элементом, размером более 800...

Как превести из char* в int и наоборот из int в char*? - C++
Как превести из char* aa='123' в int aa=123 и наоборот из int в char* . Понимаю что самому написать функцию не сложно, но наверняка это...

Форматирование строк, char to int & int to char - C++
Покажите как запихнуть число в строку и вытащить его обратно из строки. Вот всё просто в pawn str_to_num(const str) // Тупо...

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

6
nmcf
5538 / 4848 / 1644
Регистрация: 14.04.2014
Сообщений: 19,674
22.12.2015, 14:54 #2
reinterpret_cast
1
Shakior
1 / 1 / 0
Регистрация: 29.08.2015
Сообщений: 40
Завершенные тесты: 1
22.12.2015, 15:34  [ТС] #3
Спасибо, работает.
Вот пример мб кому-то пригодится:
C++
1
2
3
4
5
6
char incoming_data_buffer[50];
//..
uint16_t leng = 0;
uint16_t ID = 0;
leng =*(reinterpret_cast<uint16_t*>(incoming_data_buffer));
ID =*(reinterpret_cast<uint16_t*>(incoming_data_buffer+2));
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
22.12.2015, 15:37 #4
Копировать не проблема. Но нужно байт порядок привести в порядок
0
rikimaru2013
22.12.2015, 15:42
  #5

Не по теме:

Цитата Сообщение от Croessmah Посмотреть сообщение
Но нужно байт порядок привести в порядок
Копировать байты из массива char в int

0
Shakior
1 / 1 / 0
Регистрация: 29.08.2015
Сообщений: 40
Завершенные тесты: 1
22.12.2015, 15:44  [ТС] #6
По-моему это решает проблему "тк у меня литл ендиан и строка в литл ендиане"?) + схема сообщений есть на руках
0
Croessmah
22.12.2015, 16:04     Копировать байты из массива char в int
  #7

Не по теме:

rikimaru2013, да, это мой наставник

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2015, 16:04
Привет! Вот еще темы с ответами:

Перевод char массива в int массив - C++
Делаю так: int inmas; char outmas; fgets(outmas,40,write); outmas2=atoi(outmas); Пишет что типы несовместимы.

Перевод элементов массива char в int - C++
Задача о золотом песке. Во входном файле 6 чисел, первые три стоимость за килограмм каждого вида песка, вторые - масса которую вмещает...

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

Перевод числа из массива char в целочисельное значение int - C++
Приведу пример: char* pDigit = new char; cin&gt;&gt;pDigit; предположим человек вводит: &quot;432dollars&quot; как в данном случае достать...


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

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

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