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

Преобразование структуры в байтовый массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переполнение стека во время освобождения памяти http://www.cyberforum.ru/cpp-beginners/thread1099996.html
Здравствуйте! СТолкнулся с такой проблемой, что при работе деструктора программа аварийно завершается, а в дебаггере появляется сообщение о том, что стек заполнен. Оказалось, что дело в освобождении...
C++ Как реализовать функции что бы найти синус, косинус, корень квадратный, степень от числа Добрый вечер,разрабатываю калькулятор на winapi хотелось бы узнать как реализовать функции что бы найти синус,косинус,корень квадратный,степень от числа,буду благодарен если кто-то подскажет функции... http://www.cyberforum.ru/cpp-beginners/thread1099994.html
Проверка постановки ударения C++
Совсем недавно увлекся программирование. Вспомнив, что до егэ оcталось всего ничего, решил озадачить себя и написать программку, которая будет проверять ударения в словах, как в задании a1. Но не...
Сырые строки в VS'12 C++
Добрый вечер. Попытался в VS'12 написать такую конструкцию: char* path_to_image = R"(C:\Short\Projects\OFBench\Media\TestExampleTwo.jpg)"; Пишет, что R - не объявленный идентификатор, ну и ругается...
C++ Выведение vector-а из функции void*(c++) http://www.cyberforum.ru/cpp-beginners/thread1099976.html
Здравствуйте, помогите пожалуйста. Я создаю структуру : struct MemoryBlock { size_t offset; size_t size; }; далее я создаю вектор, который содержит некоторое кол-во...
C++ Перехват экспортной функции? Здравствуйте. Есть модуль А и Б В модуле А, есть функция. В модуле Б нужно её перехватить. Как я понял, есть два пути. Можно хукнуть в модуле Б её доп. кодом по сигнатуре, оффсетом.., а есть... подробнее

Показать сообщение отдельно
iRomul
159 / 100 / 11
Регистрация: 17.10.2012
Сообщений: 480
Завершенные тесты: 1
18.02.2014, 22:26
Во-первых структуру лучше упаковать по байтовой границе:
C++
1
2
3
4
5
6
7
8
#pragma pack(push, 1)
struct foo {
  float a;
  double b;
  char c;
  int d;
}
#pragma pack(pop)
Во-вторых можно использовать объединение
C++
1
2
3
4
union foo_splitted {
  foo data;
  char array[sizeof(foo)];
}
Пишем в структуру, извлекаем значения из массива, на той стороне пишем в массив и извлекаем значения из структуры.
Можно попробовать такой вариант
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru