给定函数void main()和void hello(byte* a[4])。主函数有一个由四个字节组成的数组。需要将该数组的引用传递给函数hello进行操作。我期望正确的语法应该是:
void hello(byte* a[4]){
// Manipulate array
a[0] = a[0]+1;
}
void main(){
byte stuff[4] = {0,0,0,0};
hello(&stuff);
// hopefully stuff is now equal {1,0,0,0}
}
此外,我看到其他人使用以下形式的声明:
void hello(byte (&a)[4])
这样做是正确的吗?
std::array<byte,4>&
替代。 - user0042hello(&stuff)
,你可以传递一个指向hello
的指针,此外,你应该使用std::array
、std::vector
或任何其他 std 容器来代替byte stuff[4]
。 - t.niese