我有四个 uint8_t 数组:

uint8_t arrayOne[12]   = { 0x00,0x01,0x00,0x00,0x00,0x06,0xFE,0x03,0x01,0xC1,0x00,0x01 };

uint8_t arrayTwo[12]   = { 0x00,0x01,0x00,0x00,0x00,0x06,0xFE,0x03,0x4E,0x2D,0x00,0x0C };

uint8_t arrayThree[12] = { 0x00,0x01,0x00,0x00,0x00,0x06,0xFE,0x03,0x01,0xF3,0x00,0x01 };

uint8_t arrayFour[12]  = { 0x00,0x01,0x00,0x00,0x00,0x06,0xFE,0x03,0x20,0x04,0x00,0x01 };

我希望它们添加到另一个数组中:
uint8_t theArray[4][12] = { arrayOne,arrayTwo,arrayThree,arrayFour };

但是当我将它们添加到 theArray 时,数组的值会发生变化。

为什么?
如何将它们正确添加到数组中?

最佳答案

顶层数组应该只是一个指针数组:

uint8_t *theArrays[] = { arrayOne,arrayTwo,arrayThree,arrayFour };

您将丢失有关每个“行”长度的信息,但这很好。

我认为您不能像示例中那样在初始化程序中引用数组并将元素自动复制到更大的数组中。

关于objective-c - uint8_t 数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30616563/

10-11 22:13
查看更多