【发布时间】:2021-03-21 19:40:30
【问题描述】:
我想要以下
int ring1[5] = {1,2,3,4,5};
int ring2[5] = {6,7,8,9,10};
int ring3[5] = {11,12,13,14,15};
int rings[3][5] = {ring1, ring2, ring3};
但我在最后一行得到一个错误:
数组必须用大括号括起来的初始化器进行初始化。
【问题讨论】:
-
是时候打开关于指针章节的教科书了。
-
不能通过赋值复制数组。可以使用
memcpy或在循环中逐个元素地复制它们。您可以将rings制作成一个指针数组,例如int *rings[3] = {ring1, ring2, ring3};但请注意,对ring1[i]的任何更改也会更改rings[0][i],反之亦然。ring2和ring3也是如此。 -
这个错误有点误导,你是用
C++编译器编译的吗? -
@IrAM Arduino 是准 C++,所以是的。