一维数组
#include <stdio.h>
void test(int a[]){}//不指定数组大小
void test(int a[10]){}//指定数组大小
void test(int* a){}//a中传过来的是首元素的地址,既然是地址就可以用指针来接受
int main()
{
int a[10]={0};
test(a);
return 0;
}
指针数组
#include <stdio.h>
void test(int* a[])
{
}//不指定数组大小
void test(int* a[10])
{
}//指定数组大小
void test(int **a)
{
}//a中传过来的是首元素的地址,地址里存放了一个一级指针,就可以用一个二级指针来接受
int main()
{
int* a[10]={NULL};
test(a);
return 0;
}
二维数组
#include <stdio.h>
//void test(int arr[][10])//行可以省略,列不可以省略
//{
//
//}//常规
void test(int (*arr)[10])//每行有10个
{
}//a中传过来的是首元素的地址,地址里存放了一个一维数组的地址,就可以用一个数组指针来接受
int main()
{
int arr[8][10]={0};
test(arr);
return 0;
}