当前位置:首页 > 技术心得 > 正文内容

C语言交换两个数

xjtudll15年前 (2011-05-13)技术心得11240

可能大家都认为交换两个数如此的简单,没必要写,没新意。例如,交换a和b两个数,教科书上一直这样写:
temp=b;
a=temp;
b=a;

确实很简单。但是最近看到一段代码,觉得十分高超,是这样的:
a^=b;
b^=a;
a^=b;

同样也是三句代码,但是却未使用局部变量,巧妙吧。

值得注意的是,只有满足以下条件,才能使用上述代码

1、a,b均为无符号数
2、a,b长度一致

这个在单片机中还是有作用的哦,尤其是RAM不足的情况下~~~~

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/177/

标签: C
分享给朋友:

“C语言交换两个数” 的相关文章

Android BLE:onServicesDiscovered(BluetoothGatt gatt, int status) 没有回调过

问题: .discoverServices()调用之后,却永远不回调onServicesDiscovered(BluetoothGatt gatt, int status) 基本代码如下: public void onConnectionStateChange(BluetoothGatt gatt...

太阳能板发电原理

太阳表面温度高达摄氏6000度,内部不断进行核聚变反应,并且以辐射方式向宇宙空间发射出巨大能量。人类有三个途径利用太阳能:光热转换、光电转换及光化转换。 光热转换即靠集热器把太阳能收集,可应用于将水加热,或在寒带地区的冬季,设计太阳能暖房让人抵抗低温。太阳能暖房系统由太阳能收集器、热储存装置、...

VS2010 RDLC报表不识别xsd数据源

VS2010 RDLC报表不识别xsd数据源

1、如果是VS2010,则只能将xsd数据源放在工程的根目录 这时候RDLC报表里添加数据集才能找到xsd数据源 2、将VS2010升级到VS2010 SP1 升级之后,就支持将xsd数据源放在任意文件夹下了...

iOS10,Xcode8上传AppStore的时候,找不到构建版本

iOS10,Xcode8上传AppStore的时候,找不到构建版本

参考资料:http://blog.csdn.net/u013283787/article/details/52593143 使用Xcode8成功上传app之后,在itunes connect 构建版本里根本找不到上传的版本。 网上搜了搜,又查了一下邮件    &nb...

TM87系列单片机使用及注意事项

TM87系列单片机使用及注意事项

一、宏的使用 1、.define 可使用在任意地方,但.EQU只能在RAM区和常数区使用。 2、宏调用时,前面必须有空格。否则提示:DUPLICATE LABEL。如图所示。   二、LCD的使用 1、首先,Mask Option里面,LCD要是启用的。不然折腾半天也是瞎折腾。设置Mas...

sqlserver数据库触发器调用外部exe

sqlserver数据库触发器调用外部exe

https://www.cnblogs.com/syp1Blog/p/9482088.html sqlserver数据库触发器调用外部exe,同事可以选择参入参数! sqlserver使用 master..xp_cmdshell 进行外部exe的执行。 使用master..xp_cmdshell 之...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。