变量的引用类型和非引用类型的区别

///////////////////////////
// author:liyuechao
// date:2014.8.8
////////////////////////////
// algo1-3.cpp 变量的引用类型和非引用类型的区别
#include<stdio.h>
void fa(int a) // 在函数中改变a,将不会带回主调函数(主调函数中的a仍是原值)
{
a++;
printf("在函数fa中:a=%d\n",a);
}
void fb(int &a) // 由于a为引用类型,在函数中改变a,其值将带回主调函数
{
a++;
printf("在函数fb中:a=%d\n",a);
}
void main()
{
int n=1;
printf("在主程中,调用函数fa之前:n=%d\n",n);
fa(n);
printf("在主程中,调用函数fa之后,调用函数fb之前:n=%d\n",n);
fb(n);
printf("在主程中,调用函数fb之后:n=%d\n",n);
}


执行结果如下:

在主程中,调用函数fa之前:n=1
在函数fa中:a=2
在主程中,调用函数fa之后,调用函数fb之前:n=1
在函数fb中:a=2
在主程中,调用函数fb之后:n=2
Press any key to continue


posted @ 2014-08-15 22:13  meiyouor  阅读(275)  评论(0编辑  收藏  举报