项目1- C/C++语言中函数参数传递的三种方式
来源:互联网 发布:武汉淘宝摄影师招聘 编辑:程序博客网 时间:2024/06/04 04:03
<span style="font-size:18px;">问题及代码:</span>
<span style="font-size:18px;">代码1:</span><pre class="cpp" name="code"><span style="font-size:12px;">#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); //分三个程序,分别写上调用myswap的合适形式 printf("调用交换函数后的结果是:%d 和 %d\n", a, b); return 0;}</span>
<span style="font-size:14px;">代码2:</span>
#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); //分三个程序,分别写上调用myswap的合适形式 printf("调用交换函数后的结果是:%d 和 %d\n", a, b); return 0;}<span style="font-size:14px;">代码3:</span>
#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); //分三个程序,分别写上调用myswap的合适形式 printf("调用交换函数后的结果是:%d 和 %d\n", a, b); return 0;}
<span style="font-size:14px;">运行结果:</span>
知识点总结:
程序1中swap函数改变的值是形参的值,而输出的是实参的值,固交换不成功;程序2中,swap函数传递的是实参的地址,交换的是实参的值,固交换成功;程序3中引用作形参,因为是引用,所以实际交换的还是实参的值,固交换成功。
学习心得:
通过本次三种数值交换程序,让我更清晰的理解了实参与形参,更清晰的明白了内存地址的意义,这次程序的比较对我帮助非常大!
0 0
- 第二周项目1—C++/C语言中函数参数传递的三种方式
- 第1周项目1-C/C++语言中函数参数传递的三种方式
- 第二周项目1-C/C++语言中函数参数传递的三种方式
- 第2周项目1-C/C++语言中函数参数传递的三种方式
- 项目1 - C/C++语言中函数参数传递的三种方式
- 第二周项目1-c/c++语言中函数参数传递的三种方式
- 第2周项目1 - C/C++语言中函数参数传递的三种方式
- 第2周项目1C/C++语言中函数参数传递的三种方式
- 第二周项目1 C/C++语言中函数参数传递的三种方式
- 第2周 项目1 - C/C++语言中函数参数传递的三种方式
- 第2周 项目1 - C/C++语言中函数参数传递的三种方式
- 第二周项目1 C/C++语言中函数参数传递的三种方式
- 第2周项目1--c/c++语言中函数参数传递的三种方式
- 第2周项目1-C/C++语言中函数参数传递的三种方式
- 第二周 项目1-C/C++语言中函数参数传递的三种方式
- 项目1-c/c++语言中函数参数传递的三种方式
- 第2周项目1c/c++语言中函数参数传递的三种方式
- 第二周 项目1 C/C++语言中函数参数传递的三种方式
- (读书笔记)代码整洁之道-函数
- 项目1-c/c++语言中函数参数传递的三种方式
- HTML DOM innerHTML 属性
- SharedPreferences的存储位置和格式
- compress_ezvizlife_subsribe_static.sh
- 项目1- C/C++语言中函数参数传递的三种方式
- fastjson与Map、List结合使用
- mysql日志文件在哪 如何修改MySQL日志文件位置
- 深入探讨 java.lang.ref 包
- Android studio jni 入门helloworld
- 为DataGrid添加自动编号功能
- ffmpeg将图片序列转为视频
- Android 电话系统框架介绍
- 如何用Swift制作一个简单的画板APP