数组作为函数参数传递会退化为指针,以下三种写法都一样
1.void func(int a[]);
2. vpid func(int * a);
3. void func(int a[4]);
那么用指针的引用的方式传递数组代表的是什么含义呢?
首先:
int **p1;
//p1是一个int类型的指针的指针
int *&p2;
//p2是一个int类型的指针的引用
int &*p3;
// ERROR:p3是一个int类型引用的指针(不合法!)
int &&p4;
// p4是一个int类型引用的引用(不合法!)。
void func(int * &a) ;//a是一个引用。引用的类型是一个指向int的指针.
这样可以传递一个一维数组。但是放的一维数组的类型需要是一个指针的引用。
本文探讨了在C/C++中如何使用不同方式传递数组给函数,并解释了指针引用的含义及其应用场景。通过示例代码说明了一维数组传递的不同方式及注意事项。
4043

被折叠的 条评论
为什么被折叠?



