VC++ 介绍值传递/指针传递/引用传递的作用
来源:互联网 发布:傲剑神照经数据 编辑:程序博客网 时间:2024/06/14 22:26
下面5个函数哪个能够成功进行两个数的交换?
分析下面5个函数,用于了解值传递/指针传递/引用传递的使用方法。
#include<iostream>using namespace std;void swap1(int p, int q);void swap2(int* p, int* q);void swap3(int* p, int* q);void swap4(int* p, int* q);void swap5(int& p, int& q);int main() {int a = 1, b = 2;//swap1(a, b);//swap3(&a,&b);//swap4(&a, &b);swap5(a, b);cout << a << " " << b << endl;// 使得dos界面不闪屏 int i;cin >> i;return 0;}void swap1(int p,int q) {//值传递int temp;temp = p; p = q;q = temp;}void swap2(int* p,int* q) {//语法错误,空指针/*int* temp;*temp = *p;*p = *q;*q = *temp;*/}void swap3(int* p, int* q) {//指针传递-指针指向变化int *temp;temp = p;p = q;q = temp;}void swap4(int* p,int* q) {//指针传递-指针指向的值变化int temp;temp = *p;*p = *q;*q = temp;}void swap5(int &p, int &q) {//引用传递int temp;temp = p;p = q;q = temp;}
swap1:值传递,a和b是全局变量,不能实现a和b的交换
swap2:指针传递:内存泄漏
swap3:指针传递:不能实现两数的交换,只是指针的变化
swap4:指针传递:可以实现两数的交换,指针指向的内容发生了变化
swap5:引用传递:可以实现两数的交换
0 0
- VC++ 介绍值传递/指针传递/引用传递的作用
- c++ 值传递 引用传递 指针传递
- 什么是值传递、引用传递、指针传递
- 值传递、指针传递和引用传递
- 值传递 引用传递 指针传递
- 值传递,引用传递,指针传递
- 值传递,指针传递,引用传递
- C++值传递,指针传递,引用传递
- 值传递、指针传递、引用传递
- 值传递,指针传递,引用传递
- 值传递、指针传递、引用传递
- C++ 值传递、指针传递、引用传递
- 整形 值传递 引用传递 指针传递
- 值传递、指针传递、引用传递
- C++ 值传递 指针传递 引用传递
- 值传递,引用传递,指针传递
- 指针传递 引用传递 值传递
- 值传递引用传递及指针传递
- 第八周项目5-计数的模式匹配
- centos配置history记录每个用户执行过的命令
- linux c 创建多级目录函数实现 支持绝对路径和相对路径
- POJ 2774 Long Long Message(后缀数组[最长公共子串])
- Mybatis 批处理
- VC++ 介绍值传递/指针传递/引用传递的作用
- Rect和RectF之间的区别和联
- 第九周项目四(广义表算法库)
- 第九周 对称矩阵压缩存储的实现
- java 多excel下载 打成zip压缩包 程序中创建文件 响应到浏览器
- 安卓Json和Gson
- Ubuntu command line
- KVC Collection Operators(最大值 最小值 平均值)
- 第九周项目2——对称矩阵压缩存储的实现与应用(1)