第二周项目1 - C/C++语言中函数参数传递的三种方式
来源:互联网 发布:淘宝上几个评价一个心 编辑:程序博客网 时间:2024/06/09 16:58
问题与代码
<pre name="code" class="cpp">/* *Copyright(c)2015,烟台大学计算机学院 *All right reserved. *文件名称:test.cpp *作者:陈梦雪 *完成日期;2015年9月8日 *版本号;v1.0 * *问题描述:编写三个程序,分别调用三个版本的交换函数 *输入描述:两个需要交换的整数 *程序输出:交换后的两个整数 */
1.传值<pre name="code" class="cpp"> #include <iostream> using namespace std; void myswap(int x,int y) { int t; t=x; x=y; y=t; } int main() { int a,b; printf("请输入待交换的两个整数:"); scanf("%d%d",&a,&b); myswap(a,b); printf("调用交换函数后的结果是:%d和%d\n",a,b); return 0; }
2.传地址
#include <iostream> using namespace std; void myswap(int* p1,int* p2) { int t; t=*p1; *p1=*p2; *p2=t; } int main() { int a,b; printf("请输入待交换的两个整数:"); scanf("%d%d",&a,&b); myswap(&a,&b); printf("调用交换函数后的结果是:%d和%d\n",a,b); return 0; }
3.引用作形参
#include <iostream> using namespace std; void myswap(int &x,int &y) { int t; t=x; x=y; y=t; } int main() { int a,b; printf("请输入待交换的两个整数:"); scanf("%d%d",&a,&b); myswap(a,b); printf("调用交换函数后的结果是:%d和%d\n",a,b); return 0; }
运行结果:
1.传值
2.传地址
3.引用作形参
知识点总结:
传值是只转换了形参的值,而实参没有发生转换;
传地址是实参向形参传递存储单元地址,改变了形参的指向方向;
引用作形参是实参与形参共用一个存储空间,所以都交换了。
0 0
- 第二周项目1—C++/C语言中函数参数传递的三种方式
- 第二周项目1-C/C++语言中函数参数传递的三种方式
- 第二周项目1-c/c++语言中函数参数传递的三种方式
- 第二周项目1 C/C++语言中函数参数传递的三种方式
- 第二周项目1 C/C++语言中函数参数传递的三种方式
- 第二周 项目1-C/C++语言中函数参数传递的三种方式
- 第二周 项目1 C/C++语言中函数参数传递的三种方式
- 第二周 项目1-C/C++语言中函数参数传递的三种方式
- 第二周项目1 - C/C++语言中函数参数传递的三种方式
- 第二周 项目1-C/C++语言中函数参数传递的三种方式
- 第二周项目1 c/c++语言中函数参数传递的三种方式
- 第二周项目1—C/C++语言中函数参数传递的三种方式
- 第二周 项目1 c/c++语言中函数参数传递的三种方式
- 第二周 项目1-C/C++语言中函数参数传递的三种方式
- 第二周项目1-C/C++语言中函数参数传递的三种方式
- 第二周-项目1 - C/C++语言中函数参数传递的三种方式
- 第二周项目1-C/C++语言中函数参数传递的三种方式
- 第二周 项目1-C/C++语言中函数参数传递的三种方式
- springside4整合mybatis
- ReactNative支持的样式属性
- 小波变换在语音信号处理的应用
- libiconv 交叉编译和调用方法(UTF-8和GB2312转换)
- 常用的linux命令
- 第二周项目1 - C/C++语言中函数参数传递的三种方式
- 每日小记(16.9.8)
- APP被苹果APPStore拒绝的各种原因
- Android 图片压缩
- maven+springmvc下载excle文件——ie8可用(二)
- 输入xxxx-xx-xx格式的日期可查询当日万年历
- 单点登录之CAS SSO从入门到精通(第一天)
- 推荐好听歌曲下载
- Javascript Flash Access-Control-Allow-Origin 跨域