子函数参数传递地址
来源:岁月联盟
时间:2012-09-19
void fa(int a) /* 在函数中改变a,将不会带回主调函数(主调函数中的a仍是原值) */
{
a++;
printf("在函数fa中:a=%d/n",a); a=2
}
void fb(int *a) /* a为指针类型,在函数中改变*a,改变后的值将带回主调函数 */
{
(*a)++;
printf("在函数fb中:*a=%d/n",*a); a=2
}
void main()
{
int n=1;
printf("在主程中,调用函数fa之前:n=%d/n",n); n=1
fa(n);
printf("在主程中,调用函数fa之后,调用函数fb之前:n=%d/n",n); n=1
fb(&n); /* 实参为n的地址 */
printf("在主程中,调用函数fb之后:n=%d/n",n); n=2
}
上一篇: C程序存储布局
下一篇:[C库函数]strcat实现