源码先锋

源码先锋

C语言入门到精通第035讲——C语言传递指针给函数

admin 143 192

下面的实例中,我们传递一个无符号的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