用数组名作函数参数:
数组名表示的是数组首地址,故以数组名作为实参传递时,形参是可以存放该实参类型的指针变量的。
表示形式:
- void fun(int arr[],int n);
- void fun(int *arr,int n);
两种表示形式是等价的。
说明
C语言调用函数时虚实结合的方法都是采用“值传递”方式,当用变量名作为函数参数时传递的是变量的值,而当用数组名作为函数参数时,由于数组名代表的是数组首元素地址,因此传递的值是地址,所以要求形参为指针变量
示例:
将数组a中n个整数按相反顺序存放;
#include<stdio.h>
void reverse(int a[],int n);
int main()
{
int a[10]={
2,4,3,1,5,0,9