`
luotuoass
  • 浏览: 641978 次
文章分类
社区版块
存档分类
最新评论

判断一个函数里对参数的修改是否对外部产生影响

 
阅读更多

对于普通的swap(int a,int b)肯定不会对外界产生影响的

对于传引用swap(int &a,int &b)对a,b的修改肯定会对外界产生影响

现在主要说一下参数为指针 swap(int *a, int *b)或者更复杂的void func(int ***a,int ***b):

判断的依据就是如果a为左值的情况下,如果前面有 * ,则修改外界产生影响,否则没有

*a=5;有

a=0x12345678;没有

和一个同学聊天时谈到的,感觉挺有用的~

分享到:
评论

相关推荐

    API之网络函数---整理网络函数及功能

    RegLoadKey 从以前用RegSaveKey函数创建的一个文件里装载注册表信息 RegNotifyChangeKeyValue 注册表项或它的任何一个子项发生变化时,用这个函数提供一种通知机制 RegOpenKey 打开一个现有的注册表项 ...

    javascript函数的解释

    108.isNaN()是JavaScript 的内部函数,对参数进行运算,判断其是否为非数字。若参数为NaN (注释:非数值值),则返回true;否者返回false;parseInt 也是一个JavaScript 的内部函数,分析一个 字符串,并返回给定...

    LHGDialog V3.5.2 正式版 lhgDialog弹出窗口组件 lhgdialog V3.5.2

    page:窗口内容页的地址参数值:窗口的内容页为一个单独的页面文件,这个文件的路径是内容页面文件相对于调用窗口插件的路径或也可使用绝对路径,如果此参数的值为不同域的外部链接,那一定要使下面的link参数为真...

    《你必须知道的495个C语言问题》

    5.2 怎样在程序里获得一个空指针? 54 5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样? 55 NULL 宏 56 5.4 NULL是什么,它是怎么定义的? 56 5.5 在使用非零位模式...

    C语言程序设计标准教程

     函数作为另一个函数调用的实际参数出现。 这种情况是把该函数的返回值作为实参进行传送,因此要求该函数必须是有返回值的。例如: printf("%d",max(x,y)); 即是把max调用的返回值又作为printf函数的实参来使用的。...

    你必须知道的495个C语言问题

    5.2 怎样在程序里获得一个空指针? 5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样? NULL宏 5.4 NULL是什么,它是怎么定义的? 5.5 在使用非零位模式作为空指针的内部...

    C语言编程要点

    5.30. 怎样判断一个程序是否遵循ANSIC标准? 92 5.31. 怎样取消一个已定义的宏? 92 5.32. 怎样检查一个符号是否已被定义? 93 5.33. C语言提供了哪些常用的宏? 93 第6章 字符串操作 93 6.1. 串拷贝(strcpy)和内存拷贝...

    JAVA面试题最全集

    判断一个文件或目录是否存在 如何读写文件 7.Java多态的实现(继承、重载、覆盖) 8.编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串。 9.Java中访问数据库的步骤,Statement和...

    grub4dos-V0.4.6a-2017-02-04更新

    执行时可以不用输入扩展名,比如输入test如果当前路径下有一个test.g4b就会自动使用。 2013-10-17 1.修改代码支持新版HOTKEY。 2013-07-10 1.insmod现在支持长文件名(以前最多11个字符,现在没有限制). 2....

    C语言FAQ 常见问题列表

    o 6.2 怎样在程序里获得一个空指针? o 6.3 用缩写的指针比较 ``if(p)" 检查空指针是否可靠?如果空指针的内部表达不是 0 会怎么样? o 6.4 NULL 是什么, 它是怎么定义的? o 6.5 在使用非全零作为空指针内部...

    最新软件狗时间复制工具

    (如可随机产生一个数,再根据该数来决定对锁里哪个地址的值进行校验。) → 在程序中不同的地方对加密锁进行检测,即多点加密。这个方法可配合方法一使用。 → 在您程序的运行过程中,您可以定时、不定时地对加密锁...

    PHP 面向对象技术(全面讲解).txt

    他们是同一类的,对其中一个机做任何动作都不会影响其它9 台机器,但是我对类修改,也就是在 这个配置单上加一个或少一个配件,那么装出来的9 个机子都改变了,这是类和对象的关系(类的 实例化结果就是对象)。 3....

    《javaScrip开发技术大全》源代码

    • sample41.htm 判断一个对象是否是另一个对象的原型对象 • sample42.htm 判断对象的属性是否可以被枚举 • sample43.htm 监视属性值的变化情况 第10章(\代码\第10章) • sample01....

    易语言程序免安装版下载

    操作系统界面功能支持库(shell.fne)中的“执行()”命令增加一个参数“窗口显示方式”,作用与核心库“运行()”命令的同名参数一致。 6. 数据库操作支持库增加读写长整数字段的功能,但受限于系统接口暂不能读写...

    Qt Creator 的安装和hello world 程序+其他程序的编写--不是一般的好

    程序里我们先建立一个主工程,作为主界面,然后再建立一个对 话框类,将其加入工程中,然后在程序中调用自己新建的对话框类来实现多窗口。 实现过程: 1.首先新建Qt4 Gui Application 工程,工程名为nGui,Base ...

    javascript入门笔记

    Javascript Basic 1、Javascript 概述(了解) Javascript,简称为 JS,是一款能够运行在 JS解释器/引擎 中的脚本语言 ... 1、定义一个函数 change ,该函数中接收两个参数(a,b) 2、在函数体中,如果 a 大于 b的话...

    HGE_系列教材(1-9)

    System_Launch 运行一个URL 或者外部的可执行文件或数据文件 System_Snapshot 截屏并保存到一个文件 3. 资源函数(Resource functions): Resource_Load 从硬盘上读取资源到内存中 Resource_Free 从内存中删除读取...

    【。net 专业】 面试题

    2.如何把一个array复制到arrayList里 foreach( object o in array )arrayList.Add(o); 3.datagrid.datasouse可以连接什么数据源 [dataset,datatable,dataview] dataset,datatable,dataview , IList 4.概述反射和序列...

Global site tag (gtag.js) - Google Analytics