问题及代码:
/*
*Copyright(c++)2015,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:cpp1.cpp
作者:宋 晨
完成日期:2015年09月11日
版本号:v1.0
*
*问题描述:C语言提供了两种函数参数传递的方式:传值和传地址。在C++中,又拓展了引用方式。
通过本项目,确认自己已经掌握了这三种方式的原理,为后续学习做好准备。
*输入描述:两个数
*程序输出:交换后的两个数
*/
<pre name="code" class="csharp">//(1)传值#include <iostream>#include <cstdio>using namespace std;void myswap(int ,int );int main(){int a,b;printf("请输入待交换的两个整数:");scanf("%d%d",&a,&b);myswap(a,b);printf("调用交换函数后的结果是:%d和%d\n",a,b);return 0;}void myswap(int x, int y) { int t; t=x; x=y; y=t; }
运行结果:
观察结果:值没有被交换。因为ab两值传递给了myswap中的xy,但是xy交换后没有返回给ab
问题及代码:
//(2)传地址
#include <iostream>
#include <cstdio>
using namespace std;
void myswap(int *,int *);
int main()
{
int a,b;
printf("请输

本文通过实例代码分析了C/C++中函数参数传递的三种方式,包括值传递、指针传递和引用传递。在值传递中,参数副本被交换,原值不变;而在指针和引用传递中,可以实现原值的真正交换。文章指出,对于复杂数据类型的交换,使用指针和引用更为合适,并提到作者在理解和使用指针时遇到的挑战,表达了继续深入学习的决心。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



