值传递和址传递

值传递

上面的代码是想要交换x,y的值,把x,y传递给swap函数之后,执行下面的操作:

在swap中a和b交换了,但是和x,y没有关系,所以x,y在main中不会变。

址传递

下面再看把x,y的地址&x,&y传给swap,swap使用两个指针变量接受它们。

swap中的*a,*b是对地址的解引用,即*a就是x,*b就是y。所以交换了x和y的值

下面是具体步骤:

交换两个变量的指针不会改变变量的地址,也不会改变变量的值

再看交换x和y的指针,这个交换的是a,b指向的地址,并没有交换 x和y的值

想要交换x和y的地址是不能实现的。因为这些变量通常存储在栈(stack)或堆(heap)的固定位置,并且它们的地址是由编译器或运行时环境自动管理的。

引用:交换变量的值

下面是使用引用的方法交换两个变量的值,

把x,y传给swap,swap使用&a,&b接受。引用就相当于形参通过别名的方式操作实参。

相关推荐

  1. 传递引用传递

    2024-06-16 10:18:05       16 阅读
  2. C++ 传递、引用传递、指针传递

    2024-06-16 10:18:05       35 阅读
  3. 是否引用传递一定优于传递

    2024-06-16 10:18:05       5 阅读
  4. 信号槽对传递参数引用传递参数的总结

    2024-06-16 10:18:05       5 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-16 10:18:05       10 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-16 10:18:05       12 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-16 10:18:05       11 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-16 10:18:05       13 阅读

热门阅读

  1. Python 学习 第二册 第11章 文件

    2024-06-16 10:18:05       5 阅读
  2. 高速缓冲存储器【易忘】

    2024-06-16 10:18:05       4 阅读
  3. Emacs Verilog mode 使用指南

    2024-06-16 10:18:05       6 阅读
  4. 广东工业大学上岸经验分享!

    2024-06-16 10:18:05       6 阅读
  5. Memcached介绍和详解

    2024-06-16 10:18:05       5 阅读
  6. AI大模型会让搜索引擎成为历史吗?

    2024-06-16 10:18:05       7 阅读
  7. 【C++ COM组件 运用ATL工程创建和调用COM组件】

    2024-06-16 10:18:05       5 阅读
  8. 记录.偏僻冷知识

    2024-06-16 10:18:05       6 阅读
  9. ssh免密登录

    2024-06-16 10:18:05       6 阅读
  10. npm发布自己的插件包

    2024-06-16 10:18:05       4 阅读
  11. 源码编译安装 clang/gcc

    2024-06-16 10:18:05       6 阅读
  12. 自定义防抖注解

    2024-06-16 10:18:05       5 阅读
  13. 如何把自己卖个好价钱:实战面试谈薪水

    2024-06-16 10:18:05       7 阅读
  14. 游戏缓存与异步持久化的完美邂逅

    2024-06-16 10:18:05       5 阅读