我正在尝试将uint8_t数组强制转换为uint32_t数组,但似乎无法正常工作。
谁可以帮我这个事。我需要将uint8_t值转换为uint32_t。
我可以通过转移来做到这一点,但我认为这是一种简单的方法。
uint32_t *v4full;
v4full=( uint32_t *)v4;
while (*v4full) {
if (*v4full & 1)
printf("1");
else
printf("0");
*v4full >>= 1;
}
printf("\n");
最佳答案
鉴于需要将uint8_t值获取为uint32_t,以及in4_pton()上的规范...
尝试对字节顺序进行可能的更正:
uint32_t i32 = v4[0] | (v4[1] << 8) | (v4[2] << 16) | (v4[3] << 24);
关于c - 如何在C中将uint8_t数组4转换为uint32_t,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20296162/