Re: [問題] 想請問各位這個程式該如何寫?
這是一種交換兩個數值的快速運算法則!
你可以將A和B分別帶入兩個不同的數值試試看,你就會看到有什麼樣的情況產生了!
基本的理論是將兩個數值做三次的XOR的位元運算,
就能得到兩個數值交換的結果!
這在有一本書中有提到,
書名為Programming Interview Exposed,
John Wiley & Sons出版
裡面介紹許多罕見卻好用的程式技巧,
歡迎大家去參考看看!
※ 引述《timecrisis (........)》之銘言:
: : 推 mmss33:其實這是很基本的東西喔 ^^" http://0rz.net/fe1va 06/27 14:36
: : → mmss33:http://0rz.net/9a1yo 06/27 14:37
: void swap(int *a, int *b)
: {
: *a = *a ^ *b;
: *b = *b ^ *a;
: *a = *a ^ *b;
: }
: 在裡面 ^ 代表什麼意義嗎?
: 用法是什麼呢?
: 還有裡面提到的 xor 是C++的嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.75.178.1
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章