国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

不使用臨時(shí)變量,實(shí)現(xiàn)整數(shù)互換

2019-11-10 18:58:38
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1.不考慮溢出:

int a=1;

int b=2;

a=a+b;

b=a-b;

a=a-b;

網(wǎng)上解釋:

缺點(diǎn):是只能用于數(shù)字類型,字符串之類的就不可以了。a+b有可能溢出(超出int的范圍),溢出是相對(duì)的, +了溢出了,-回來(lái)不就好了,所以溢出不溢出沒(méi)關(guān)系,就是不安全。

2異或運(yùn)算()

1.異或算法(這種方法不借助第三個(gè)變量,也不會(huì)產(chǎn)生溢出,比較安全,但僅限整數(shù)類型)

             int a, b;             a = 20; b = 2;
             a = a ^ b;//a=10100,b=0010,兩者相異或的結(jié)果是10110,并保存在a中。            b = a ^ b;//a=10110,b=0010,兩者相異或的結(jié)果是10100,并保存在b中,換成是20
            a = a ^ b;//a=10110,b=10100,兩者相異或的結(jié)果是00010,保存在a中,換成十進(jìn)制是2
先將a,b轉(zhuǎn)化為二進(jìn)制在進(jìn)行比較,若兩個(gè)二進(jìn)制位相同,則結(jié)果為0,不同為1
第一步:a和b不相同取a(a=10100,b=0010)

第二步:a和b不相同取a(a=10110,b=10110)
第三步:a和b相同取b(a=0010)
a⊕b = (?a ∧ b) ∨ (a ∧?b)異或算法

3,直接賦值

int a=1;

int b=2;

b = a + (a = b) * 0;
或者
a = a + b - (b = a);
注:以下博客太深?yuàn)W非專業(yè)人士勿進(jìn)
http://blog.csdn.net/kangkermit/article/details/21371159 


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 乌兰察布市| 历史| 西和县| 伊金霍洛旗| 汶上县| 仁怀市| 卢氏县| 禄劝| 东丽区| 边坝县| 普安县| 射阳县| 余干县| 长丰县| 乌拉特前旗| 长治县| 大兴区| 理塘县| 郑州市| 宁波市| 双辽市| 松溪县| 宝鸡市| 突泉县| 濮阳市| 杭州市| 马山县| 黎城县| 临泉县| 六盘水市| 集贤县| 城步| 永昌县| 巫溪县| 广安市| 南昌市| 嘉黎县| 泊头市| 盱眙县| 凭祥市| 怀柔区|