本文主要是介绍C/C++ 中函数形参传递二维数组的方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
//代码示范,在g++下编译通过
using namespace std;
void Func(int **a,int m,int n)
{
for(int i = 0;i < m; ++i)
for(int j = 0;j < n; ++j)
cout << *((int*)a + 10*m + n) <<endl; //解引用只有一次,再把二级指针转为一级指针
}
int main()
{
int static a[10][10];
Func((int **)a,10,10); //把一级指针转换为二级指针
return 0;
}
//上述代码中抓住指针地址不变的原则,传递了一个表头进入函数,进行了灵活了转换。
//显然a[][] 这样的使用是不合法的。
这篇关于C/C++ 中函数形参传递二维数组的方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!