寒星轩

There are innumerable stars in the sky, the smallest is me!

李星ID:starlee
200841次访问,排名344好友4人,关注者63
欢迎大家访问我的Blog。
主要是C++,设计模式,面向对象设计方面的技术文章。
starlee的文章
原创 97 篇
翻译 0 篇
转载 45 篇
评论 304 篇
李星的公告
郑重声明

        本BLOG所发表的 原创文章,作者保留一切权利。必须经过作者本人同意后方可转载,并注名作者(StarLee)和出处(CSDN Blog)。
作者Email:
coolstarlee(at)sohu.com
最近评论
光良:这样在使用该c++程序时,还是需要安装.net的框架吧?
burningcpu:不过,我们要有以前DLL的源代码才行。
burningcpu:我觉得不需要这么复杂吧,C++写的DLL,其他语言不能使用,主要的原因就是编译后的函数名更改了,我们可以自己增加自定义模块(.def),在这个def文件中去讲函数名转换就可以了。这样其他的语言都可以调用C++写的DLL了。
tecancy:Open solution in VS.Net IDE ...
ERROR: Not found the solution file!

请问楼主,命令行出项上面提示,不能打开解决方案,怎么解决
谢谢
lizhenneng:很有意思的程序。作者写出来是为了让别人分享自己的知识,却有人在那里泼凉水,真替那些人悲哀。
文章分类
收藏
相册
友情链接
houdy的专栏
lijgame的专栏
lyrebing的专栏
禾青谷
存档
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
订阅到BlogLines
订阅到Yahoo
订阅到GouGou
订阅到飞鸽
订阅到Rojo
订阅到newsgator
订阅到netvibes

原创 不用临时变量交换两个变量的值收藏

新一篇: C++中接口与实现分离的技术 | 旧一篇: Fibonacci(斐波那契)序列的递归和非递归算法

    大家对于异或(XOR)的如下性质应该很熟悉:

(X XOR Y) XOR Y = X
(X XOR Y) XOR X = Y
 
    我们可以利用异或(XOR)的这个性质来实现不用临时变量交换两个变量的值。具体代码很简单:

void Swap(int& x, int& y)
{
    x 
= x ^ y;
    y 
= x ^ y;
    x 
= x ^ y;
}

发表于 @ 2006年02月15日 16:10:00|评论(loading...)|编辑

新一篇: C++中接口与实现分离的技术 | 旧一篇: Fibonacci(斐波那契)序列的递归和非递归算法

评论

#jave 发表于2006-03-16 12:43:00  IP: 58.63.146.*
可以用:
x=x+y;
y=x-y;
x=x-y;
来实现!
#dynuaa 发表于2006-08-11 21:50:00  IP: 218.2.240.*
jave 发表于2006-03-16 12:43:00 IP: 58.63.146.*
可以用:
x=x+y;
y=x-y;
x=x-y;
来实现!

让我想起了我在高中时候劳动技术课上第一次接触学习机BASIC语言时候的题目。
#goldli 发表于2007-09-11 16:19:39  IP: 218.108.28.*
扩展到String在delphi 里
procedure TForm1.C(var x, y: Pchar);
begin
x:=x xor y;
y:=x xor y;
x:=x xor y;
end;

var x,y:Pchar;
begin
x:=Pchar(edit1.Text);
y:=Pchar(edit2.Text);
c(x,y);
label1.Caption:=x;
label2.Caption:=y;
end;
#jimmy_w 发表于2008-01-26 00:53:06  IP: 121.229.37.*
可以用:
x=x+y;
y=x-y;
x=x-y;
来实现!
--------

这样很可能会溢出,ok?
所以异或是最好的
#danielhua 发表于2008-02-16 21:16:19  IP: 121.228.215.*
异或也有个小问题。
如果a和b是一个变量,结果就不对了。
#cndx100 发表于2008-03-07 10:45:45  IP: 58.60.27.*
长见识了
发表评论  


登录
Csdn Blog version 3.1a
Copyright © 李星