使用宏进行交换两变量的原理

来源:互联网 发布:图书数据采集器 编辑:程序博客网 时间:2024/05/16 07:16

#define SWAP(a,b) (a=b-a; b=b-a; a=a+b;)

 

其原理如下:把a,b两点当成一条直线上的两个点,在a的左边设一圆点。其中a=b-a为两点之间的距离,b=b-a为原变量a,a=a+b为原变量b

该算法利用了线段的关系,不需要中间变量

原创粉丝点击