算法

C++ 值传递、引用传递、地址传递

2023-01-09  本文已影响0人  笑破天
//1、值传递
void mySwap01(int a, int b) {
    int temp = a;
    a = b;
    b = temp;
    printf("mySwap01:a=%d,b=%d\n", a, b);
}
 
//2、地址传递
void mySwap02(int * a, int * b) {
    int temp = *a;
    *a = *b;
    *b = temp;
    printf("mySwap02:a=%d,b=%d\n", *a, *b);
}
 
//3、引用传递
void mySwap03(int &a,int &b) {
    int temp = a;
    a = b;
    b = temp;
    printf("mySwap03:a=%d,b=%d\n", a, b);
}
    int a = 10;
    int b = 20;
    
//    mySwap01(a,b);  //值传递,形参不会改变实参 a=10,b=20
 
//    mySwap02(&a, &b); // a=20,b=10
 
    mySwap03(a, b); // a=20,b=10
 
    printf("a=%d,b=%d\n", a, b);
上一篇 下一篇

猜你喜欢

热点阅读