第二周项目1-C/C++语言中函数参数传递的三种方式

来源:互联网 发布:淘宝发布商品类目查询 编辑:程序博客网 时间:2024/05/18 08:49

/*

*Copyright (C) 2014 ,烟台大学计算机学院

*All rights reserved

*文件名称:test.cpp

*作       者:刘光辉

*完成日期:2016年9月8日

*

*问题描述:输入两个值将其调换输出

*输入描述:两个整型,两个指针,两个地址

*输出描述:输出调换后的两个数

*/

<1>传值:

#include <iostream>  #include <cstdio>  using namespace std;  void myswap(int x,int y);  int main()  {      int a,b;      printf("请输入待交换的两个整数:\n");      scanf("%d %d",&a,&b);      myswap(a,b);                           //传值      printf("调用交换函数后的结果是:\n%d 和 %d\n",a,b);      return 0;  }  void myswap(int x,int y)  {      int t;      t=x;      x=y;      y=t;  }  

运行结果:


<2>传地址:

#include <iostream>  #include <cstdio>  using namespace std;  void myswap(int *p1,int *p2);  int main()  {      int a,b;      printf("请输入待交换的两个整数:\n");      scanf("%d %d",&a,&b);      myswap(&a,&b);                        //传地址      printf("调用交换函数后的结果是:\n%d 和 %d\n",a,b);      return 0;  }  void myswap(int *p1,int *p2)  {      int t;      t=*p1;      *p1=*p2;      *p2=t;  }  

<3>引用形参:

#include <iostream>  #include <cstdio>  using namespace std;  void myswap(int &x,int &y);  int main()  {      int a,b;      printf("请输入待交换的两个整数:\n");      scanf("%d %d",&a,&b);      myswap(a,b);                      //引用作形参      printf("调用交换函数后的结果是:\n%d 和 %d\n",a,b);      return 0;  }  void myswap(int &x,int &y)  {      int t;      t=x;      x=y;      y=t;  }  
运行结果:


知识点总结:

  通过这三个方法来实现对两个值进行转换,不仅学习到了部分有关函数的只是,而且简单的学习到了指针和地址的只是,收获颇大。


0 0
原创粉丝点击