傳值引用和調用引用的區別


只需要記住一句話:

傳值引用一般就是生成一個臨時對象,而引用調用是調用參數本身。

參照下面C語言代碼理解:

在 test.h文件里實現兩個方法

 
         

 #include <stdio.h>

/*交換兩個數*/
void exchange(int x,int y){
    int temp;
    temp = x;
    x = y;
    y = temp;
    printf("交換后第一個數:\n%d\n交換后第二個數:\n%d\n",x,y);
} 

/*交換兩個數的指針*/
void exchangeAddress(int *x,int *y){
    int temp = *x;
    *x = *y;
    *y = temp;
    printf("交換后第一個數:\n%d\n交換后第二個數:\n%d\n",*x,*y);
} 

在 test.c文件里調用這兩個方法如下:

#include <stdio.h>
#include "test.h"

int  main(){
    int a, b;
    printf("請輸入a: \n");
    scanf("%d",&a);
    
    printf("請輸入b: \n");
    scanf("%d",&b);

    exchange(a,b);
    printf("交換后:\n a=%d\n b=%d\n",a,b) ;
    
    exchangeAddress(&a,&b);
    printf("交換地址:\n a=%d\n b=%d\n",a,b) ;

} 
    

打印結果:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM