第二周项目-c++语言中函数参数传递的三种方式
2015-09-13 19:00
295 查看
/* * 2015,烟台大学计算机学院 *All right reserved *文件名称:test。cpp *作者:贾召飞 *完成日期:2015年9月13日 *版本号:v1.0 * *问题描述:c++语言中函数参数传递的三种方式 */ /* void myswap(int x, int y) { int t; t = x; x = y; y = t; } */ /* void myswap(int &x, int &y) { int t; t = x; x = y; y = t; } */ void myswap(int *p1, int *p2) { int t; t = *p1; *p1 = *p2; *p2 = t; } #include <iostream> using namespace std; int main() { int a,b; cout << "请输入待交换的俩个整数"<< endl; cin >> a >> b; myswap(&a,&b); cout << "a=" << a << " " << "b=" << b << endl; return 0; }
运行结果如下图所示
知识点总结:
(1) 三种传递方式在发生函数调用时,都需要为被调函数分配相应的活动记录,活动记录包括主调函数的断点地址、形参列表和局部变量。
(2) 采用值传递方式时,传递的是变量的值;采用引用传递和指针传递方式时,传递的是变量的地址。
(3) 对于引用传递方式,所传递的地址是通过对实参进行取地址运算来获得的;而对于指针传递方式,所传递的地址就是实参的值。
(4) 对于值传递方式,对形参的修改不能影响到实参;对于指针传递和引用传递方式,对形参的修改一般都要影响到实参
学习心得:
头一回发博客,真心感觉挺麻烦的,但是也知道了自己曾经的不足,主调函数的断点地址也是头一回知道,补充了一下知识。
相关文章推荐
- 从C/C++到iOS,然后方向OpenGL资料
- POJ C++程序设计 编程题#4:计算整数平方和
- 实现C++ String类
- C++中用函数返回值初始类对象时的一个问题
- C++基础---面向对象建模方法
- [C++]虚函数
- C++中 常量引用、指向常量的指针、常量指针的区别
- POJ C++程序设计 编程题#3:计算数列平方和
- Effective C++——条款35(第6章)
- c++stl之逆向迭代器 Reverse Iterators
- POJ C++程序设计 编程题#2 输出指定结果一
- 第二周上机实践项目2——C/C++语言中函数参数传递的三种方式
- C++ 虚函数表解析
- 设计模式C++实现(5)——原型模式、模板方法模式
- POJ C++程序设计 编程题#1 输出200
- 字典树 c++ 实现
- C++基础---面向对象程序设计
- 黑马程序员——C语言基本运算
- C++定义的宏
- 项目3 - 体验复杂度-汉诺塔