Цитата(juvf @ Nov 27 2017, 08:42)

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, либое ещё где уже готовые методы/шаблоны. Или уже кем-то ураденно написано... только нужно знать, где это взять. Кто-нибудь может подсказать?
Это нормальный код для этой задачи.
Использовать инлайн функции совершенно нормальная практика для подобных целей, например можете сделать так же как в этом примере
https://github.com/threatstack/libldns/blob...s/util.h.in#L81Использовать набор функций ldns_read_uint32, ldns_read_uint16, ldns_read_uint8 для знаковых соотвественно.