文档章节

传值引用和调用引用的区别

o
 osc_n6euf5h6
发布于 2019/03/20 00:08
字数 236
阅读 0
收藏 0

钉钉、微博极速扩容黑科技,点击观看阿里云弹性计算年度发布会!>>>

只需要记住一句话:

传值引用一般就是生成一个临时对象,而引用调用是调用参数本身。

参照下面C语言代码理解:

在 test.h文件里实现两个方法

 #include <stdio.h>

/*交换两个数*/
void exchange(int x,int y){
    int temp;
    temp = x;
    x = y;
    y = temp;
    printf("交换后第一个数:\n%d\n交换后第二个数:\n%d\n",x,y);
} 

/*交换两个数的指针*/
void exchangeAddress(int *x,int *y){
    int temp = *x;
    *x = *y;
    *y = temp;
    printf("交换后第一个数:\n%d\n交换后第二个数:\n%d\n",*x,*y);
} 

在 test.c文件里调用这两个方法如下:

#include <stdio.h>
#include "test.h"

int  main(){
    int a, b;
    printf("请输入a: \n");
    scanf("%d",&a);
    
    printf("请输入b: \n");
    scanf("%d",&b);

    exchange(a,b);
    printf("交换后:\n a=%d\n b=%d\n",a,b) ;
    
    exchangeAddress(&a,&b);
    printf("交换地址:\n a=%d\n b=%d\n",a,b) ;

} 
    

打印结果:

 

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
C语言-传值,传地址(指针),传引用区别和联系

很多编程老手对传值,传地址,传引用的区别搞的也不会很清楚,今天我就花一点时间再次介绍一下这些概念的本质。 其实,不用分为三类,只有两类即可。传值和传引用。为什么会出现传地址(即传...

abaojin
2015/11/11
970
0
【Java基础】值传递与引用传递的区别?

值传递 值传递,是指方法调用时,传递的参数是按值的拷贝传递。 如: public class ValueTest {public void test(int x){System.out.println("值传递,x:"+x);}public static void main(Str......

Auhgnahz
2015/12/24
355
5
传值&传值引用

转自http://www.cnblogs.com/androidsuperman/p/9012320.html 首先对传值和传引用要有个基本的概念 传值:传递的是值的副本。方法中对副本的修改,不会影响到调用方。 传引用:传递的是引用的...

osc_3s8xkap7
2019/05/24
0
0
关于java是值传递还是引用传递

一、概念 实际上对这两种传递方式,知乎上有个回答说得很好: 值传递和引用传递,属于函数调用时参数的求值策略(Evaluation Strategy),这是对调用函数时,求值和传值的方式的描述,而非传递...

osc_91fan8ji
2018/06/05
1
0
C++:指针和引用

引用的概念及用法 所谓的引用并不是说重新定义的一个新的变量,而是给一个已经定义好了的变量起的一个别名。 下面看看引用到底是如何使用的: void test1() { int a = 1; int& b = a; //引用...

天王盖地虎626
2019/07/14
33
0

没有更多内容

加载失败,请刷新页面

加载更多

如何通过日期属性对数组进行排序 - How to sort an array by a date property

问题: Say I have an array of a few objects: 说我有一些对象的数组: var array = [{id: 1, date: Mar 12 2012 10:00:00 AM}, {id: 2, date: Mar 8 2012 08:00:00 AM}]; How can I sort......

javail
42分钟前
22
0
技术教程| 百度鹰眼历史轨迹查询:轨迹抽稀功能

本文作者:用****9 本篇教程中,我们将详细地说明鹰眼历史轨迹查询(gettrack接口)中,如何通过vacuate_grade选项对轨迹进行抽稀,以及不同的抽稀力度对轨迹产生的影响。 上一篇教程中,我们...

百度开发者中心
前天
17
0
整数的最大值和最小值 - Maximum and Minimum values for ints

问题: I am looking for minimum and maximum values for integers in python. 我在python中寻找整数的最小值和最大值。 For eg., in Java, we have Integer.MIN_VALUE and Integer.MAX_VA......

法国红酒甜
今天
22
0
Quartz的Misfire处理规则 错过任务执行时间的处理机制

调度(scheduleJob)或恢复调度(resumeTrigger,resumeJob)后不同的misfire对应的处理规则 CronTrigger withMisfireHandlingInstructionDoNothing ——不触发立即执行 ——等待下次Cron触发频率...

独钓渔
今天
4
0
PHP解析/语法错误; 以及如何解决它们? - PHP parse/syntax errors; and how to solve them?

问题: Everyone runs into syntax errors. 每个人都遇到语法错误。 Even experienced programmers make typos. 即使是经验丰富的程序员也会打错字。 For newcomers, it's just part of the......

fyin1314
今天
20
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部