位置: IT常识 - 正文

C++ 一种交换两个数的思路(c++交换语句)

编辑:rootadmin
在 Lua 或者 Python 中可以使用多值赋值语句来交换两个数。例如:a, b = b, a。在 C++ 中有没有类似的操作? 先解析一下多值赋值的原理,a, b = b, a 等价于 t1, t2 = b, a a, b = t1, t2 可以看到多值赋值还是用到了中间变量,而且还是两个。想到 ...

推荐整理分享C++ 一种交换两个数的思路(c++交换语句),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:c++交换两个数的值,c++中交换函数,c++中交换两个变量的值,c++交换两个字符串,c++交换两数,c++中交换两个变量的值,c++交换两个变量的值,不能使用中间变量,c++交换两个变量的值,不能使用中间变量,内容如对您有帮助,希望把文章链接给更多的朋友!

在 Lua 或者 Python 中可以使用多值赋值语句来交换两个数。例如:a, b = b, a。在 C++ 中有没有类似的操作?

C++ 一种交换两个数的思路(c++交换语句)

先解析一下多值赋值的原理,a, b = b, a 等价于

t1, t2 = b, aa, b = t1, t2

可以看到多值赋值还是用到了中间变量,而且还是两个。想到两个变量,可以联想到 C++ 中的 std::pair,可以用 std::make_pair(b, a) 构造中间变量,来完成上述第 1 条语句的功能。中间变量是 std::pair 类型。如何将 std::pair 的两个元素赋值给 a 和 b ? 可以利用 std::tie 对 std::pair 进行 unpack。示例代码如下:

#include <iostream>#include <tuple>int main(){ int a = 1, b = 2; std::tie(a, b) = std::make_pair(b, a); std::cout << a << " " << b << std::endl;}

成功输出:

2 1

这种方法也和多值赋值一样可以适用于多个数的交换。例如让 a、b、c、d 四个数左循环交换一次(全部往左边挪一个位置)。示例代码如下:

#include <iostream>#include <tuple>int main(){ int a = 1, b = 2, c = 3, d = 4; std::tie(a, b, c, d) = std::make_tuple(b, c, d, a); std::cout << a << " " << b << " " << c << " " << d << std::endl;}

成功输出:

2 3 4 1
本文链接地址:https://www.jiuchutong.com/zhishi/303173.html 转载请保留说明!

上一篇:如何使用python绘制折线图?(用python绘制)

下一篇:ps打不出字但图层有字(ps打不出字怎么回事)

  • oppo手环为何天气不同步(oppo手环为什么不显示天气)

    oppo手环为何天气不同步(oppo手环为什么不显示天气)

  • 京东怎么修改定位(京东怎么修改定位领取北京优惠券)

    京东怎么修改定位(京东怎么修改定位领取北京优惠券)

  • 微信怎么完成群公告(微信怎么完成群公告显示完成)

    微信怎么完成群公告(微信怎么完成群公告显示完成)

  • vivo手机怎么下载来电铃声(vivo手机怎么下载oTG)

    vivo手机怎么下载来电铃声(vivo手机怎么下载oTG)

  • 苹果8p扬声器左边不响(苹果8p扬声器左边不响咋回事)

    苹果8p扬声器左边不响(苹果8p扬声器左边不响咋回事)

  • 退款一定是要原路返回吗(退款一定要退货吗)

    退款一定是要原路返回吗(退款一定要退货吗)

  • 花呗不能扫码支付,但淘宝能用(花呗不能扫码支付在哪更改)

    花呗不能扫码支付,但淘宝能用(花呗不能扫码支付在哪更改)

  • 什么叫违反微信规范(什么叫违反微信个人账号)

    什么叫违反微信规范(什么叫违反微信个人账号)

  • 苹果6s plus屏幕多大(苹果6splus屏幕多大尺寸)

    苹果6s plus屏幕多大(苹果6splus屏幕多大尺寸)

  • 微信聊天翻译功能怎样设置(微信聊天翻译功能在哪里)

    微信聊天翻译功能怎样设置(微信聊天翻译功能在哪里)

  • 一个手机两个号码怎么下载两个微信(一个手机两个号可以下载两个微信吗)

    一个手机两个号码怎么下载两个微信(一个手机两个号可以下载两个微信吗)

  • 苹果手机为什么连不上网(苹果手机为什么贵)

    苹果手机为什么连不上网(苹果手机为什么贵)

  • c语言源程序由什么组成(c语言源程序由什么转换为目标程序)

    c语言源程序由什么组成(c语言源程序由什么转换为目标程序)

  • 试用3天订阅怎么取消(试用3天订阅怎么退订)

    试用3天订阅怎么取消(试用3天订阅怎么退订)

  • 探探多少人喜欢算正常(探探多少人喜欢算正常女)

    探探多少人喜欢算正常(探探多少人喜欢算正常女)

  • 苹果pay怎么支付公交(苹果pay怎么支付不了)

    苹果pay怎么支付公交(苹果pay怎么支付不了)

  • 腾讯王卡能改归属地吗(腾讯王卡可以变更)

    腾讯王卡能改归属地吗(腾讯王卡可以变更)

  • 照片卡点音乐视频怎么做(照片卡点的音乐)

    照片卡点音乐视频怎么做(照片卡点的音乐)

  • 位置怎么定位到地图上(位置怎么定位到别的城市)

    位置怎么定位到地图上(位置怎么定位到别的城市)

  • soa和微服务的区别(微服务较soa的优势)

    soa和微服务的区别(微服务较soa的优势)

  • 苹果录像怎么中途暂停(苹果录像怎么搞)

    苹果录像怎么中途暂停(苹果录像怎么搞)

  • 微信收付款怎么设手势密码(微信收付款怎么添加到桌面)

    微信收付款怎么设手势密码(微信收付款怎么添加到桌面)

  • Win11如何关闭开机启动项?Win11开机启动项关闭的方法(win11如何关闭开机自启动项)

    Win11如何关闭开机启动项?Win11开机启动项关闭的方法(win11如何关闭开机自启动项)

  • 合伙企业交企业所得税还是个人所得税
  • 承销债券收取的承销费属于什么收入
  • 研发费用可以计入哪个科目
  • 发票上的密码区有什么用
  • 个税手续费返还计入哪个科目
  • 哪些纳税人需要实名办税
  • 个人独资公司可以控股其他公司吗
  • 设备租赁公司购进设备怎么做账
  • 租个人房子开发票税率是多少
  • 河道维护费所有权归属
  • 金税盘抵减税款分录
  • 银行和保险公司是什么关系
  • 新个税申报身份怎么填
  • 现金流净额为负值说明什么
  • 对于不需要交强险的人
  • 预转固的好处
  • 子公司搭建
  • 民办非企业年底额度不能低于多少
  • 默认网关不可用频繁掉线
  • uniapp关闭当前页面
  • mdn php
  • 按揭贷款到账时间
  • 补交之前年度税款怎么调账
  • ntkrpamp.exe
  • windows7旗舰版最新版本
  • 常用的php操作mysql的函数有哪些
  • 无法偿还应付账款账务处理
  • 政府机关出租房屋要交税吗
  • Chrome谷歌浏览器官网
  • 工行对公贷款利息扣除时间
  • yii2组件的理解
  • web自动化测试方法
  • 本期收入及免税收入怎么填
  • 数学建模回归模型例题
  • 端午节过节费发放通知
  • 公司的日常费用包括哪些
  • 公司开户限额一般多少
  • 汇算清缴需要做账吗
  • 预计净残值影响营业利润吗
  • mysql更新语句
  • 房产出租税率是多少
  • 成本核算分摊方法总结
  • 汽车抵押贷款会计分录
  • 一般纳税人季度所得税怎么计算
  • 押金无法收回账怎么办
  • 购买原材料保险费分录
  • 两个企业同一个法人
  • 融资租赁的服务费是什么票
  • 申请国家知识产权的条件
  • 土地作为无形资产还是固定资产
  • 出口退税转为免税做账处理
  • 一般纳税人暂估入库的会计分录怎么写
  • 小规模纳税人抵扣税控盘增值税怎么申报
  • 所有者权益是什么意思
  • 如何删除win10系统
  • win8windows设置在哪里
  • win8操作
  • ubuntu服务
  • linux系统的
  • windows7壁纸怎么恢复
  • 系统更新到win11后还可以调回win10吗
  • win7如何打开远程桌面连接
  • Win8.1怎么打开无线网卡
  • win10激活突然失效
  • 跑跑跑游戏
  • Activity 的四种启动模式
  • jquery input checked
  • 用js实现冒泡排序
  • Ext JS 4官方文档之三 -- 类体系概述与实践
  • unity协程的工作原理
  • javascript框架的作用
  • [置顶] [Android Studio 权威教程]Android Studio 三种添加插件的方式
  • 江西电子税务局官网app
  • 增值税月报怎么报
  • 深圳市国税局副局长是谁
  • 企业年度总收入指的是什么意思
  • 发票机怎么测试打印
  • 消费税是单一环节征税吗
  • 珠宝消费税怎么申报
  • 允许抵扣和不允许抵扣进项税额的发票种类
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设