通过引用传递数组
将数组传递给函数时,重要的是要考虑是否要按值传递数组或通过参考。按值传递会创建数组的副本,而按引用传递则允许函数修改原始数组。
通过引用传递数组语法
传递通过引用数组,我们使用以下语法:
void foo(int (&myArray)[100]);
在此语法中,myArray 是对 100 个数组的引用整数。这意味着 foo() 函数中对 myArray 所做的任何更改都将反映在原始数组中。
单独的括号和大括号
单独的括号后跟大括号 (&myArray)[100] 有两个用途:
替代数组声明
值得注意的是,以下声明都是等效的:
void foo(int * x); void foo(int x[100]); void foo(int x[]);
但是,以下声明是不同:
void foo(int (&x)[100]);
此声明仅接受 100 个整数的数组,我们可以安全地在 x 上使用 sizeof。
无效声明
以下声明无效:
void foo(int & x[100]); // error
这被解析为“数组”引用”,这不是 C 中的有效数据类型。
以上是如何在 C 中通过引用传递数组?的详细内容。更多信息请关注PHP中文网其他相关文章!