用函數指針代替C++的引用參數

 /* f.c 用函數指針代替C++的引用參數 */函數

 #include<stdio.h>指針

 void fa(int a) /* 在函數中改變a,將不會帶回主調函數(主調函數中的a還是原值) */io

 {引用

   a=5;im

   printf("在函數fa中:a=%d\n",a);img

 }di


 void fb(int *a) /* a爲指針類型,在函數中改變*a,改變後的值將帶回主調函數 */參數

 {void

   *a=5;printf

   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); /* 實參爲n的地址 */

   printf("在主程中,調用函數fb以後:n=%d\n",n);

   system("pause");

 }

運行結果以下

相關文章
相關標籤/搜索