数组做参数传递有关问题

数组做参数传递问题
使用一个二维数组,如B[4][65536]。想把数组第三行作为实参,也就是B[3][65536]。如何设计函数的实参和形参?

急求。谢谢大家

------解决方案--------------------
type B[4][65536];

int func(type arrayB[65536])
int func(type *ptr, int len)

func(&B[3][0]);
func(B[3], 65536);
------解决方案--------------------
typedef int TYPE_ARRAY[65536];

void fun(TYPE_ARRAY arr)
{
}

int main()
{
int T_arr[4][65536] = {0};
fun(T_arr[3]);
return 0;
}

------解决方案--------------------


void test_fun(int *arr)
{
 //do something
}

 int B[4][65536];
test_fun(&B[3][0]);


------解决方案--------------------
形参用指针,比如 int* arr ,再给一个size长度参数,然后就像用一维的数组那样使用。
函数调用的时候传入 B[3],65536就可以。
#include <iostream>
#include <iterator>
using namespace std;

void func(int* array, size_t n)
{
copy(array, array + n, ostream_iterator<int>(cout, " "));
cout << endl;
}

int main()
{
int array[3][10] = {0};
for (int i = 0; i < 10; i++)
array[2][i] = i;
func(array[2], 10);
return 0;
}

------解决方案--------------------
引用:
Quote: 引用:

形参用指针,比如 int* arr ,再给一个size长度参数,然后就像用一维的数组那样使用。
函数调用的时候传入 B[3],65536就可以。
#include <iostream>
#include <iterator>
using namespace std;

void func(int* array, size_t n)
{
copy(array, array + n, ostream_iterator<int>(cout, " "));
cout << endl;
}

int main()
{
int array[3][10] = {0};
for (int i = 0; i < 10; i++)