一、cout實現輸出其他進製
cout<(a) << endl;
// 輸出16進製制, setbase(int)可以設定8等。
cout << setbase(16) << i << endl;
二、前字尾運算
字首運算是「先變後用」
字尾運算是「先用後變」
三、位運算子
1、位操作符使用整型的運算元,位操作符將其整型操作視為二進位制位的集合,為每一位提供檢驗和設定功能。
操作符功能
單雙目用法
&按位與
雙目運算子
expr1& expr2
按位或雙目運算子
^按位異或
雙目運算子
expr1^ expr2~取反
單目運算子
~expr1
<<
左移雙目運算子
expr1 <>>
右移雙目運算子
expr1 >>expr2
四、按位操作的乙個技巧
使用異或實現交換兩個值,並且不使用第三方變數
a = a^b;
b = a^b;
a = a^b;
五、移位運算子
型別左移
右移int
低位補零
高位補符號位
unsigned int
低位補零
高位補零
應用:用位移實現計算乙個數的1的個數
int
numberof1
(int n)
return count;
}
六、賦值轉換
記憶體範圍大的傳換為小的,高位捨去,例:int(4byte)轉換為unsigned short(2byte)
short a = 0x1111ffff;//得到的a為0xffff
取值範圍小的賦給範圍大的,符號位擴充套件,例:char轉換為int
chat a = 0xe0;
int b = a;//0xe0為11010000符號位為1,所以b = 0xffffffe0;
注意:unsigned short a;//a 的最大值為65536.當記憶體溢位時,計算a的值為a%65536,即迴圈從頭數
運算子優先順序 C 運算子優先順序
c 運算子優先順序 優先順序運算子 描述方向1 scope resolution 範圍解析 left to right 2 suffix postfix increment and decrement 字首 字尾遞增和遞減 function call 函式呼叫 array subscripting ...
運算子 及 運算子優先順序
數 算符 7個 1 為求餘運算子 例如 3 2 1 8 3 2 2 和 為自加1和自減1運算子。3 i 和 i都是加1運算。如 i 和 i 等於 i i 1 i i i i的意義和i i完全不一樣,可以這樣 理解,加 號在前面的先進行加1運算再賦值,加號在 後面 的 先進行賦 值在加1運算。如int...
運算子優先順序 Python 運算子優先順序
python 運算子優先順序 運算子描述 lambda lambda表示式 or布林 或 and布林 與 not x 布林 非 in,not in 成員測試 is,is not 同一性測試 比較 按位或 按位異或 按位與 移位 加法與減法 乘法 除法與取餘 x,x 正負號 x 按位翻轉 指數 x.a...