标题:C++语言如何实现变量的互换?知道的请近来解释一下!
取消只看楼主
东方罗密欧
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-10-22
 问题点数:0 回复次数:2 
C++语言如何实现变量的互换?知道的请近来解释一下!
第一种方法,也是最常规的方法(利用临时变量):
#include <stdio.h>
#define PRINT(a,b) printf(#a "=%d," #b "=%d\n",a,b)
void main()
{


int a=12;

int b=44;

int temp;

PRINT(a,b);

/*开始交换a,b的值*/
    temp=a;

a=b;

b=temp;

PRINT(a,b);
}
第二种方法:
#include <stdio.h>
#define PRINT(a,b) printf(#a "=%d," #b "=%d\n",a,b)
void main()
{


int a=12;

int b=44;

PRINT(a,b);

/*开始交换a,b的值*/
    a=a+b;

b=a-b;

a=a-b;

PRINT(a,b);
}
第三种方法(利用位操作):
#include <stdio.h>
#define PRINT(a,b) printf(#a "=%d," #b "=%d\n",a,b)
void main()
{


int a=12;

int b=44;

PRINT(a,b);

/*开始交换a,b的值*/


a=a^b;

b=b^a;

a=a^b;

PRINT(a,b);
}



这个是摘自其他论坛的C语言变量互换方法,可我看不懂.由于我学的时候是直接从C++开始学的。才开始学,请老鸟们解释一下.谢谢.
搜索更多相关主题的帖子: 变量互换 
2008-10-22 14:39
东方罗密欧
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-10-22
得分:0 
第三种方法在C++里面可以用,我刚刚编译过的。可以成功运行。
2008-10-22 15:16
东方罗密欧
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-10-22
得分:0 
还是第一,二种更好理解一点!谢谢大家的回答!
2008-10-24 15:17



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-239838-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.201441 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved