您的位置:首页 > 编程语言 > C语言/C++

第二周项目 2—C/C++语言中函数参数传递的三种方式

2017-09-14 10:54 411 查看
/*  

 *Copyright (c) 2017, 烟台大学计算机学院  

 *All rights reserved.  

 *文件名称:shuimuqinghua.cpp  

 *作    者:任泽西 

 *完成日期:2017年9月14日  

 *版 本 号:v1.0  

 *  

 *问题描述:输入三个数并使用交换函数交换  

 *输入描述:1 2  

 *程序输出:测试结果  

 */  

第一种方法之直接传递参数值

[cpp] view
plain copy

#include<iostream>  

 using namespace std;  

 void myswap(int x,int y);  

 int main()  

 {  

     int a,b;  

     cout<<"请输入待交换的两个整数:";  

     cin>>a>>b;  

     myswap(a,b);  

     cout<<"调用交换函数后的结果是:"<<a<<' '<<b<<endl;  

     return 0;  

 }  

 void myswap(int x,int y)  

 {  

     int temp;  

     temp=x;  

     x=y;  

     y=temp;  

 }  



第二种方法之传地址

[cpp] view
plain copy

#include<iostream>  

 using namespace std;  

 void myswap(int *x,int *y);  

 int main()  

 {  

     int a,b,*p1,*p2;  

     cout<<"请输入待交换的两个整数:";  

     cin>>a>>b;  

     p1=&a;  

     p2=&b;  

     myswap(p1,p2);  

     cout<<"调用交换函数后的结果是:"<<a<<' '<<b<<endl;  

     return 0;  

 }  

 void myswap(int *x,int *y)  

 {  

     int temp;  

     temp=*x;  

     *x=*y;  

     *y=temp;  

 }  



第三种方式之引用作形参

[cpp] view
plain copy

#include<iostream>  

using namespace std;  

void myswap(int &x,int &y);  

int main()  

{  

    int a,b;  

    cout<<"请输入待交换的两个整数:";  

    cin>>a>>b;  

    myswap(a,b);  

    cout<<"调用交换函数后的结果是:"<<a<<' '<<b<<endl;  

    return 0;  

}  

void myswap(int &x,int &y)  

{  

    int temp;  

    temp=x;  

    x=y;  

    y=temp;  

}  

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: