有鑄造結構爲uint64_t中或任何其他int類型的清潔方式,因爲在結構= <到的sizeof詮釋? 我唯一能想到的只是一個'好'的解決方案 - 使用工會。不過,我從來沒有喜歡他們。鑄造結構轉換成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;
現在怎麼辦我投some_struct捕捉其位uint32_t的寄存器順序。
希望能讓它更清晰一些。
人們總是memcpy的! – 2012-08-10 14:32:16
@MartinBeckett這將是一個不錯的答案:) – dasblinkenlight 2012-08-10 14:33:02
不喜歡工會?工會正以您清楚,可維護的方式完成您想做的事。什麼只是「確定」呢? – 2012-08-10 14:34:26