c原因学习---指针作为函数的形参

 指针作为函数的形参, 可以改变实参的值。

#include<stdio.h>


// 交换两个变量的值
int swap(int x, int y)
{
    int k = y;
    y = x;
    x = k;

    printf("x is %d, y is %d",x,y);

    return x, y;
}

int main() { int a = 10; int b = 20; //调用交换函数 swap(a, b); return 0; }

 

下面演示的是使用指针来处理变量交换

#include<stdio.h>


// 交换两个变量的值
int swap(int x, int y)
{
    int k = y;
    y = x;
    x = k;

    printf("x is %d, y is %d",x,y);

    return x, y;
}


//方法2:

void swap2(int* x, int* y)
{
        int* k = *x; //k 指针变量里面存的是*x,10
        *x = *y; //*y 是20, *x是10, 经过这一步*x就变成20了
        *y = k; // *y 是20, k是10, 经过这一步*y 就变成了10

        printf("x is %d, y is %d ", *x, *y);
}

int main()
{


    int a = 10;

    int b = 20;

    //调用交换函数

    swap2(&a, &b);

    return 0;

}

 

posted @ 2022-11-06 21:18  朵朵奇fa  阅读(149)  评论(0)    收藏  举报