指標和位運算很適合編寫系統軟體的需要。
位運算指進行二進位制位的運算。
按位與」運算子 & 用途
1)清零
2)取乙個數中某些指定位(比如只需要低8位)
3)想保留哪一位保留下來,就與乙個數進行&運算,此數在該位取1。
按位或 |
按位異或(xor) ^ 同0異1
1)使特定位翻轉
2)與0相異或,保留原值
3)交換兩個值,不用臨時變數
//假如a=3,b=4。將a和b交換值
a=a^b;
b=b^a;
a=a^b;
b=b^(a^b)=a^b^b=a;( b^b=0)
a=a^b^(b^a^b)=a^a^b^b^b=b;
取反運算 ~(單目運算子)
左移運算子 <<
將乙個數的各二進位制位全部向左移若干位
a = a<<2;(向左移2位)
高位左移後溢位,捨棄。
右移運算子 >>
移到右端的低位被捨棄,對於無符號數,高位補0;
算術右移(補1)和邏輯右移(補0);
C語言之位運算詳解
位運算是指按二進位制進行的運算。在系統軟體中,常常需要處理二進位制位的問題。c語言提供了6個位操作運算子。這些運算子只能用於整型運算元,即只能用於帶符號或無符號的char,short,int與long型別。運算子含義描述 按位與如果兩個相應的二進位制位都為1,則該位的結果值為1,否則為0 按位或 兩...
C語言之位運算子
位運算子分析 1.c語言中的位運算子 c語言中的位運算子直接對bit位進行操作,其效率最高。速度快於四則運算和邏輯運算。2.左移和右移的注意點 左運算元必須為整數型別 char和short被隱式轉換為int後進行移位操作 右運算元的範圍必須為 0,31 左移運算子 將運算數的二進位制位左移 規則 高...
易語言 之位運算
一 函式列表 易語言示例 作用整數型 位取反 將指定數值每乙個位元位的值取反後返回 整數型 位與 如兩個數值有某共同位元位為1,則返回值的對應位也為1,否則為0 整數型 位或 如兩個數值中有乙個數值的某一位元位不為零,則返回值的對應位就為1,否則為0 整數型 位異或 如兩個數值對應位元位的值不相等,...