我有一个 6 个数组 uint16_t
这实际上是三个 uint32_t
,所有位都按正确的顺序排列。我怎样才能尽可能有效地将前者转换为后者?
数组中的元素数量在编译时是已知的。
最佳答案
大概是这样的:
uint16_t arr16[6];
uint32_t *parr32 = (uint32_t*)(&arr16);
现在您可以使用
parr32[i]
引用被覆盖的元素 arr16
大批。
关于c - 如何有效地将 uint16_t[2N] 转换为 uint32_t[N]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17548647/