Нужно из массива байт получить int, long, float, uint32_t и т.п. Явное приведение типов не всегда и не везде работает из-за "выравнивания".
писать китайский код типа
uint32_t p = (uint32_t)array[7]; p |= (uint32_t)array[8] << 8; p |= (uint32_t)array[9] << 16; p |= (uint32_t)array[10] << 24;
надоело, да и нецелесообразно. Можно сделать шаблон для всех типов, но ездить в Тулу со своим самоваром перетаскивать из проекта в проект свой шаблон.... сами понимаете....
Наверняка есть либо в std, либое ещё где уже готовые методы/шаблоны. Или уже кем-то ураденно написано... только нужно знать, где это взять. Кто-нибудь может подсказать?
|