C++语言中函数参数传递的三种方式
来源:互联网 发布:java算法题 编辑:程序博客网 时间:2024/05/01 04:57
/* * Copyright (c++) 2016 烟台大学计算机学院 * All right reserved. * 文件名称:test1.cpp * 作 者: 姜延锴 * 完成日期:2016年9月8日 * 版 本 号:v1.9 * * 问题描述:交换两个整形变量 * 输入描述:两个整数 * 程序输出:交换后的两个整数 *///(1)传值#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;}结果:未成功。形参值的改变不能对实参产生影响//(2)传地址#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;}结果:运行成功原因:函数在调用的时候需要指定地址的实参。这时候的参数传递方式就是地址传递方式,形参指针和实参指针指向同一个地址,因此,被调用函数中对形参指针所指向的地址中的内容的任何改变都会影响到实参//(3)引用作形参#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;}结果:运行成功原因:直接对形参进行操作都会直接改变数据知识点总结: 从这个程序中可以了解到三种传值的不同与优缺点 学习心得: 在指针练习中没加地址符,导致犯错,这是一个注意点,在错误中积累,在实践中成长。
0 0
- C语言中函数参数传递的三种方式
- C语言中函数参数传递的三种方式
- C语言中函数参数传递的三种方式
- C语言:函数参数传递的三种方式
- 第二周项目一 C/C++语言中函数参数函数传递的三种方式
- 第二周 C/C++语言中函数参数函数传递的三种方式
- [C]C语言中函数参数传递的三种方式(x,*x,&x)
- 第二周项目1—C++/C语言中函数参数传递的三种方式
- C++语言中函数参数传递的三种方式
- C++语言中函数参数传递的三种方式
- C++语言中函数参数传递的三种方式
- 第二周项目1-C/C++语言中函数参数传递的三种方式
- 第2周项目1-C/C++语言中函数参数传递的三种方式
- c/c++语言中函数参数传递的三种方式——徐吉平
- 项目1 - C/C++语言中函数参数传递的三种方式
- 第二周项目1-c/c++语言中函数参数传递的三种方式
- 第一周项目 — C/C++语言中函数参数传递的三种方式
- 第二周项目:C/C++语言中函数参数传递的三种方式
- linux U盘启动盘安装ubuntu
- Quick Start With PyCharm(翻译)
- 第二周项目1-C/C++语言中函数参数传递的三种方式
- 大数据配置集群ssh免密码登录
- This file is set to build for a version older than the project deployment target. Functionality may
- C++语言中函数参数传递的三种方式
- 基于Davenport风速谱两点时程模拟
- linux命令-date显示或设置时间
- MySQL基础讲解
- utf8_bin跟utf8_general_ci的区别
- Android性能优化笔记
- jvm类加载
- 【Qt开发】QTableWidget的详细设置
- 第2周项目2-程序的多文件组织