Poo*_*ria 1 c++ arrays performance integer
考虑以下要转换为单个无符号整数的字节数组:
unsigned char arr[3] = {0x23, 0x45, 0x67};
Run Code Online (Sandbox Code Playgroud)
每个字节表示整数的等效字节,现在您将特别建议以下方法之一:
unsigned int val1 = arr[2] << 16 | arr[1] << 8 | arr[0];
//or
unsigned int val2=arr[0];
*((char *)&val2+1)=arr[1];
*((char *)&val2+2)=arr[2];
Run Code Online (Sandbox Code Playgroud)