数组作为函数的参数
- 数组元素作为函数参数
由于实际参数可以是表达式形式,数组元素可以是表达式的组成部分,因此数组元素可以作为函数的实际参数,与用变量作为实际参数一样,是单向传递。例如:
#include<stdio.h>
#include<stdlib.h>
/* 数组元素作为函数参数.c */
/* written by Chen Gengru */
/* updated on 2018-12-25 */
void ShowNumber(int iMember);
int main()
{
int i;
int iCount[10];
for (i = 0; i < 10; i++)
{
iCount[i] = i;
}
for (i = 0; i < 10; i++)
{
ShowNumber(iCount[i]);
}
return 0;
}
void ShowNumber(iMember)
{
printf("%d\n", iMember);
}
- 数组名作为函数参数
此时实际参数与形式参数都应使用数组名
例如:
#include<stdlib.h>
#include<stdio.h>
/* 数组名作为函数参数 */
/* written by Chen Gengru */
/* updated on 2018-12-27 */
void Evaluate(int iArrayName[]);
void Display(int iArrayName[]);
int main()
{
int iArray[10];
Evaluate(iArray);
Display(iArray);
return 0;
}
void Display(int iArrayName[10]) //数组元素的显示
{
int i;
for (i = 0; i < 10; i++)
{
printf("%d\n", iArrayName[i]);
}
}
void Evaluate(int iArrayName[10])
{
int i;
for (i = 0; i < 10; i++)
{
iArrayName[i] = i;
}
}
3.可变长度数组作为函数参数
#include<stdio.h>
#include<stdlib.h>
/* 可变长度数组作为函数参数 */
/* written by Chen Gengru */
/* updated on 2018-12-28 */
void Evaluate(int iArrayName[]);
void Display(int iArrayName[]);
int main()
{
int iArray[10];
Evaluate(iArray);
Display(iArray);
return 0;
}
void Display(int iArrayName[])
{
int i;
for (i = 0; i < 10; i++)
{
printf("%d\n", iArrayName[i]);
}
}
void Evaluate(int iArrayName[])
{
int i;
for (i = 0; i < 10; i++)
{
iArrayName[i] = i;
}
}