Преобразование структуры в int

Существует ли чистый способ приведения структуры к типу uint64 _t или любому другому типу int, учитывая, что структура in <= соответствует размеру int? Единственное, о чем я могу думать, это только «хорошее» решение -для использования союзов. Однако я никогда не любил их.

Позвольте мне добавить фрагмент кода для пояснения:

typedef struct {
uint8_t field: 5;
uint8_t field2: 4;
/* and so on... */
}some_struct_t;

some_struct_t some_struct;
//init struct here

uint32_t register;

Теперь, как мне преобразовать некоторую структуру _, чтобы зафиксировать порядок ее битов в регистре uint32 _t.

Надеюсь, это немного прояснит ситуацию.

8
задан Mark Lakata 20 May 2015 в 23:54
поделиться