下面的实例中,我们传递一个无符号的long型指针给函数,并在函数内改变这个值:
实例
voidgetSeconds(unsignedlong*par);
intmain()
{
unsignedlongsec;
getSeconds(sec);
/*输出实际值*/
printf("Numberofseconds:%ld\n",sec);
return0;
}
voidgetSeconds(unsignedlong*par)
{
/*获取当前的秒数*/
*par=time(NULL);
return;
}
当上面的代码被编译和执行时,它会产生下列结果:
Numberofseconds:1294450468
能接受指针作为参数的函数,也能接受数组作为参数,如下所示:
实例
#
doublegetAverage(int*arr,intsize);
intmain()
{
/*带有5个元素的整型数组*/
intbalance[5]={1000,2,3,17,50};
doubleavg;
/*传递一个指向数组的指针作为参数*/
avg=getAverage(balance,5);
/*输出返回值*/
printf("Averagevalueis:%f\n",avg);
return0;
}
doublegetAverage(int*arr,intsize)
{
inti,sum=0;
doubleavg;
for(i=0;isize;++i)
{
sum+=arr[i];
}
avg=(double)sum/size;
returnavg;
}
当上面的代码被编译和执行时,它会产生下列结果:
Averagevalueis:214.40000





