美文网首页
C语言-运用指针进行角色互换

C语言-运用指针进行角色互换

作者: 广陵周惊蛰 | 来源:发表于2020-01-09 18:48 被阅读0次

    问题描述:运用指针进行角色互换

    源代码:

    /*运用指针进行角色互换*/
    /*只有方案二可以完成角色互换*/
    
    #include<stdio.h>
    void swap1(int x,int y),swap2(int *px,int *py), swap3(int *px,int *py);
     int main(void)
     {
        int a=1,b=2;
        int *pa=&a,*pb=&b;
        
        swap1(a,b);
        printf("After calling swap1:a=%d,b=%d\n",a,b);
        
        a=1;
        b=2;
        swap2(pa,pb);
        printf("After calling swap2:a=%d,b=%d\n",a,b);
        
        a=1;
        b=2;
        swap3(pa,pb);
        printf("After calling swap3:a=%d,b=%d\n",a,b);
     
        return 0;   
     }
     
     void swap1(int x,int y)
     {
        int t;
        t=x;
        x=y;
        y=t;
     }
     
      void swap2(int *px,int *py)
     {
        int t;
        t=*px;
        *px=*py;
        *py=t;
     }
     
       void swap3(int *px,int *py)
     {
        int *pt;
        pt=px;
        px=py;
        py=pt;
     }
    

    运行结果:

    运用指针进行角色互换

    程序心得:

    1、在C语言中实参与形参之间的数据转换是单向的“值传递”方式,调用函数是不能该百年实参变量的是的。当指针变量作为函数参数时也遵循这一规则。调用函数不能改变实参形参的指针变量的值,但是可以改变实参指针变量所指向的变量的值。

    2、当指针变量作为函数参数时也遵循这一规则。调用函数不能改变实参形参的指针变量的值,但是可以改变实参指针变量所指向的变量的值。这样的机制叫做引用调用。

    3、采用引用调用机制需要在函数定义时将指针作为函数的形参,在函数调用时把变量的地址作为实参。

    程序参数:

    • 输出大小: 149.720703125 KiB
    • 编译时间: 0.30s

    相关文章

      网友评论

          本文标题:C语言-运用指针进行角色互换

          本文链接:https://www.haomeiwen.com/subject/qxcuactx.html