經常遇到需要要對一個數求反,或求補的操作,以前采用的方法很笨,轉換為二進制一個一個位的判斷的方法.
最近無意中找到一個更簡便的方法.其實只要用到"異或"運算就行了
"異或"運算為位相同則為0,位不同則為1.
比如我們將要2個字節的數進行求反的操作時,直接"異或"0xFF就行了,如果是4個字節則"異或"0xFFFF.
int value=100^0xFF;
value=155;
怎么樣,這個方法是不是很簡單.-_-.
經常遇到需要要對一個數求反,或求補的操作,以前采用的方法很笨,轉換為二進制一個一個位的判斷的方法.
最近無意中找到一個更簡便的方法.其實只要用到"異或"運算就行了
"異或"運算為位相同則為0,位不同則為1.
比如我們將要2個字節的數進行求反的操作時,直接"異或"0xFF就行了,如果是4個字節則"異或"0xFFFF.
int value=100^0xFF;
value=155;
怎么樣,這個方法是不是很簡單.-_-.
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。