我有以下UINT8
變量:如何將4個UINT8變量連接成一個UINT32變量?
UINT8 var1 = 0b00000001; //0000 0001
UINT8 var2 = 0b00000011; //0000 0011
UINT8 var3 = 0b00000111; //0000 0111
UINT8 var4 = 0b00001111; //0000 1111
我想這四個UINT8
變量打包成一個UINT32
變量具有以下值:
UINT32 var1 = 0b00000001000000110000011100001111; //00000001 00000011 00000111 00001111
請問下面的代碼正確,安全地做到這一點?
UINT32 var1 = (var1<<24) + (var2<<16) + (var3<<8) + var4;
好的,對於這個我們確實需要知道底層類型。但它很可能被破壞。 –
@BaummitAugen你是什麼意思的基礎類型?我將字節值存儲在變量中。那是你所指的? –
您似乎認爲'00000001'等是二進制文字。你正在使用哪種C++編譯器? – Michael