c/c++语言中函数参数传递的三种方式
来源:互联网 发布:手工客软件 编辑:程序博客网 时间:2024/06/06 04:56
/*2015,烟台大学计算机与控制工程学院 *作者:张瑞蕾 *完成日期:2015年9月7日 *版本:v1.0 *问题描述:希望能够交换两个整型变量*///方法一:#include<iostream>using namespace std;void myswap(int x,int y){int t;t=x;x=y;y=t;}int main(){int a,b;cout<<"请输入待交换的两个整数: "<<endl;cin>>a>>b;myswap(&a,&<pre class="cpp" name="code">#include<iostream>using namespace std;void myswap(int &x,int &y){int t;t=x;x=y;y=t;}int main(){int a,b;cout<<"请输入待交换的两个整数: "<<endl;cin>>a>>b;myswap(a,b);cout<<"调用函数后的结果是:"<<a<<" "<<b<<endl;return 0;}
b);cout<<a<<b;return 0;
法一错误;
//方法二:#include<iostream>using namespace std;void myswap(int *p1,int *p2){int t;t=*p1;*p1=*p2;*p2=t;}int main(){int a,b;cout<<"请输入待交换的两个整数: "<<endl;cin>>a>>b;myswap(&a,&b);cout<<"调用函数后的结果是:"<<a<<" "<<b<<endl;return 0;}
运行结果:
//方法三:
#include<iostream>using namespace std;void myswap(int &x,int &y){int t;t=x;x=y;y=t;}int main(){int a,b;cout<<"请输入待交换的两个整数: "<<endl;cin>>a>>b;myswap(a,b);cout<<"调用函数后的结果是:"<<a<<" "<<b<<endl;return 0;}
运行结果:
总结:
法一错误是因为只改变了形参,而为改变实参。法二和法三交换了实参,因此可成功。
学习心得:
对待问题要从各个角度去思考,不可局限于一角。
0 0
- C语言中函数参数传递的三种方式
- C语言中函数参数传递的三种方式
- C语言中函数参数传递的三种方式
- C语言:函数参数传递的三种方式
- [C]C语言中函数参数传递的三种方式(x,*x,&x)
- 第二周项目1—C++/C语言中函数参数传递的三种方式
- 第二周项目一 C/C++语言中函数参数函数传递的三种方式
- 第二周 C/C++语言中函数参数函数传递的三种方式
- 第二周项目1-C/C++语言中函数参数传递的三种方式
- 第2周项目1-C/C++语言中函数参数传递的三种方式
- c/c++语言中函数参数传递的三种方式——徐吉平
- 项目1 - C/C++语言中函数参数传递的三种方式
- 第二周项目1-c/c++语言中函数参数传递的三种方式
- 第一周项目 — C/C++语言中函数参数传递的三种方式
- 第二周项目:C/C++语言中函数参数传递的三种方式
- 第2周项目1 - C/C++语言中函数参数传递的三种方式
- 第一周 项目一C/C++语言中函数参数传递的三种方式
- 第2周项目1C/C++语言中函数参数传递的三种方式
- Lua:Nginx Lua环境配置,使用openresty
- 给SQL Server字段加注释
- 原型模式-2
- ORACLE sid,pid,spid总结
- 第二周,C/C++语言中函数参与传递的三种方式
- c/c++语言中函数参数传递的三种方式
- Servlet完全教程
- jQuery实现星星评分样式
- Android Gradle基础
- linux下qt环境搭建
- ActionBar中的下拉菜单操作NAVIGATION_MODE_LIST
- iOS小结(三)animation blocks VS CALayer animation
- 第2周 项目1 - C/C++语言中函数参数传递的三种方式
- HDU 1596 find the safest road -- floyd