第二周项目1-C/C++语言中函数参数传递的三种方式
2016-09-05 20:00
459 查看
/* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:test.cpp *作者:张雯婧 *完成日期:2016年9月5号 * *问题描述:交换两个整形变量 *程序输入:两个待交换的整数 *程序输出:交换后的两个整数 */
//(1) 传值
#include<iostream> 02.using namespace std; 03.void myswap1(int x,int y) 04.{ 05.int t; 06.t=x; 07.x=y; 08.y=t; 09.} 10.int main() 11.{ 12.int a,b; 13.printf("请输入待交换的两个整数:“); 14.scanf(“%d%d",&a,&b); 15.myswap1(a,b); 16.printf("调用交换函数后的结果是: %d和 %d\n",a,b); 17.return 0; 18.}
运行结果:
//(2)传地址
#include<iostream> 02.using namespace std; 03.void myswap2(int *p1,int *p2) 04.{ 05.int t; 06.t=*p1; 07.*p1=*p2; 08.*p2=t; 09.} 10.int main() 11.{ 12.int a,b; 13.printf("请输入待交换的两个整数:“); 14.scanf(“%d%d",&a,&b); 15.myswap2(&a,&b); 16.printf("调用交换函数后的结果是: %d和 %d\n",a,b);
运行结果:
//(3)引用作形参
#include<stdio.h>
void myswap3(int &x,int &y)
{
int t;
t=x;
x=y;
y=t;
}
int main()
{
int a,b;
printf("请输入待交换的两个整数:");
scanf("%d%d",&a,&b);
myswap3(a,b);
printf("调用交换函数后的结果是:%d和%d\n",a,b);
return 0;
}
运行结果:
知识点总结:
在传值时,交换的是形参,并非交换的是实参,传地址和指针可以交换。
学习心得:
懂得了传值与指针,地址的不同,有利于进一步了解并学习C语言。
相关文章推荐
- c语言防止缓冲区数据作为有效字符被读入
- c++ 智能指针及 循环引用问题
- UVa OJ 11093 - Just Finish it up
- 从相对路径说开来(从C++到Qt)
- Cpp环境【CQYZOJ1496】【Code[VS]5287】搬家大冒险
- C/C++框架
- C/C++框架
- mac上c++11的编译问题
- VC++播放音频文件和音频数据的方法
- PAT(乙级)1012 D进制的A+B (20)
- C++ 释然
- 第二周项目1--C/C++语言中函数参数传递的三种方式
- C++ 对象和类
- 二进制“<<”: 没有找到接受“std::string”类型的右操作数的运算符
- C++构造函数简单实现电梯控制程序
- C++ 中 * 和 *& 的区别
- C++中引用(&)的用法和应用实例
- [LeetCode] Search in Rotated Sorted Array
- C++ 小玩矩阵(九度OJ 1191.1193)
- 关于C++对象引用的这种用法