Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 2
Регистрация: 19.03.2015
Сообщений: 16
1

Аналог pack/unpuck из Python и PHP

28.03.2019, 14:56. Показов 1740. Ответов 1
Метки нет (Все метки)

Чем в C++ можно распаковывать бинарные данные в int/short/double?

В питоне и пхп для этого есть unpack. Пишешь, скажем, в питоне

struct.unpack("H", b'\xe2\x07')

получаешь short:

(2018,)

Как сделать что-то подобное в плюсах?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.03.2019, 14:56
Ответы с готовыми решениями:

Аналог декоратора Python или ненормальное програмирование
Всем привет. Часто приходится делать одну и ту же вещь в коде: DWORD time = ::GetTickCount();...

Есть ли какой-нибудь аналог c# using или python with в c++ ?
В C# (using pattern) и python есть специальные конструкции которые позволяют не следить за...

Аналог функции pack(H*, $data)php на С#
Здравствуйте, уважаемые пользователи портала. Существует ли аналог функции pack(H*,'1234') из php...

Аналог PHP-функций pack/unpack
Здравствуйте. Необходима помощь с написанием аналога функций pack/unpack с PHP на C# pack —...

1
15370 / 8315 / 2017
Регистрация: 30.01.2014
Сообщений: 14,193
28.03.2019, 16:08 2
Лучший ответ Сообщение было отмечено supervasya_ как решение

Решение

Цитата Сообщение от supervasya_ Посмотреть сообщение
получаешь short:
C++
1
2
    short v;
    memcpy(&v, "\xe2\x07", sizeof(v));
Можно оформить в шаблон:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
template <typename T, size_t N>
T unpack(char const (&buf)[N])
{
    static_assert(std::is_pod<T>::value, "T should be POD type");
    T val{};
    memcpy(&val, buf, std::min(sizeof(val), N));
    return val;
}
 
int main()
{
    short v = unpack<short>("\xe2\x07");
//.....
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.03.2019, 16:08

В php из python, работу невозможно найти новичкам python. Может перейти? Есть безпроблемный хостинг для php?
Безпроблемный хостинг - значит не будет проблем таких, как в heroku. У меня в компе сайт работает...

Выполнение методов perl pack/unpack на языке python
Привет! Просьба оказать содействие, переписываю старые скрипты с perl на python, заглох на строке...

Какой-то парадокс с pack на php
Эти коды все время возвращают нули &lt;?php $w='B0'; echo pack(&quot;v&quot;,0x.$w); ?&gt; &lt;?php $w='B0';...

Русские символы NT 4.0+Service pack 6 + Option pack + MS SQL7.0 с СР1251
Помогите пожалуйста!!!!!! имею NT 4.0+Service pack 6 + Option pack + MS SQL7.0 с СР1251 Выполняю...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru