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

C语言交换两个数

xjtudll16年前 (2011-05-13)技术心得12250

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

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

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

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

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

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

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

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

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

标签: C
分享给朋友:

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

蓝牙4.0手表功能简析

蓝牙4.0手表功能简析

蓝牙手表可以分为两大类:(1)蓝牙为手表的主要功能,脱离了蓝牙,手表将只有时间相关功能。这类手表主要是作为配件使用;(2)手表本身具有强大的功能,蓝牙只是锦上添花。例如Pebble,I’m Watch,SonySmart Watch等等。此次分析的是第一类产品——...

晶振的等效电路(转载)

晶振的等效电路(转载)

http://blog.sina.com.cn/s/blog_a20257d80102w7y4.html 1 晶振的等效电气特性 (1) 概念 [1] 晶片,石英晶体或晶体、晶振、石英晶体谐振器 从一块石英晶体上按一定方位角切下薄片。 [2] 晶体振荡器 在封装内部添加IC组成振荡电路的晶...

VSPD + Keil 实现串口的仿真调试

VSPD + Keil 实现串口的仿真调试

VSPD顾名思义就是在本本上虚拟串口,实际上这个软件做的就是虚拟出一对已经互联的串口。 上面就是虚拟出来了com3和com4,而且已经交叉(默认)连接了,这样相当于本本的com3、com4在外面已经连好了,下面要做的就是在内部分别赋予com3和com4所属终端了。 com4—&mda...

Doxygen-利用graphviz生成及添加函数关系调用图

Doxygen-利用graphviz生成及添加函数关系调用图

准备工作:安装graphviz。 参考文献:http://hi.baidu.com/rdray/item/7b39b14830ba6c08c116131a 基本配置就不讲了,与生成Html文件类似。请参考:http://www.xjtudll.cn/Exp/243/ 1、Expert->Dot...

php gettext无效解决

php gettext无效解决

 代码:$lang = 'en_US'; //linux不支持zh-Hans,所以gettext、php都不支持。使用locale -a可以看到os支持的语言文字国家地区码。putenv('LANGUAGE='&nbs...

vs2010添加OLE/COM对象查看器

VS2010:工具——外部工具——"添加" 标题:OLE/COM对象查看器 命令:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\OleView.Exe 点击&qu...

发表评论

访客

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