///////////////////////////
// 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