c++ - 通过引用传递 3-Dim 固定长度数组

标签 c++ c function multidimensional-array pass-by-reference

任何人都可以提示如何通过引用传递这种类型的数组

int array[2][3][4];

以便我可以保存他的指针以便使用和修改数组? 就像,如果我说的是单个整数:

// Scope 1
int a = 3;
increment(&a);
// End Scope 1

// Scope 2
int *pa;
void increment(int *tpa) { 
  pa = tpa; *pa++; 
}
// End Scope 2

非常感谢和最好的问候。

最佳答案

如果你真的想通过引用传递数组,你可以这样做:

void f(int (&a)[2][3][4]) { }

在没有引用的 C 中,您可以通过指针传递数组(当然这在 C++ 中也有效):

void f(int (*a)[2][3][4]) { }

关于c++ - 通过引用传递 3-Dim 固定长度数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4298834/

相关文章:

c++ - 如果我只想读取数字,如何忽略文本文件中的单词

c++ - 成员模板静态函数的类型特征

c ,在函数中传递 char 数组作为参数?

c - 使用 gdb 调试 ncurses 应用程序

c - 为什么数组参数的大小与 main 中的大小不同?

c++ - 推导 LValue 引用类型

c++ - C++ 17中的静态constexpr和静态内联变量有什么区别?

c - 如何在 C 中定义结构 'Atom'?哪个更好?为什么?

python - 如何使用 Pygame 矩形

c++ - 在 C++ 中是否可以定义一个纯虚函数?