**+、- :**注意左右運算型別一致
** *、/ :**避免使用乘除運算子,cpu不一定支援,可能需要多個週期進行運算
**%:**取餘
` n % m = res [
0- m-1]
//範圍在0至m-1`
常用的三個場景:
1、取乙個範圍數:
eg: 給乙個任意的數字,得到乙個1-100以內的數字?
(m%100)+1*****>res;
2、得到m進製 的乙個個位數
3、迴圈資料結構的下標,數值n的增加,對於被除數m,會出現迴圈的餘數
真、假: 返回結果1或0
a、|| 或(前後關係不能交換) && 與
b、>大於、 >=大於等於、 < 小於、<=小於等於
c、!邏輯取反
d、條件? 表示式1:表示式2,條件為真執行1,反之執行2
a、<<:左移乘以2eg: m<<1; //m*2 int a = b*32; ===⇒ b <<5
、左移補0
注:11111111 *****= -1
b、>>: 右移除以2 符號變數有關,負數右移因為最高位符號位,不可以右移到0
c、&: 與遮蔽
` int a =
0x1234
; a=
&0xff00
//取出高8bit, 遮蔽低8bit`
a&1 —>a :取出
&:清零器 clr
|: 或
a|0 ==a
保留a|1 ==1
設定為高電平的方法,設定set
設定乙個資源的bit5為高電平,其他位不變
int a;
a = a|
(0x1
<<5)
;
清除第五位
int a;
a = a&-(
0x1<<5)
;
d、^:異或交換數值
int
fun(
)// out a = 30 ; b =20
e ~:取反數值取反
= 、|=、 &=: a=a+b==a+=b// a=a|(0x1<<5)==a|=(0x1<<5)
():限制符,優先運算;函式訪問功能 int fun(); fun();
: 陣列;記憶體訪問的id符號
{}:函式體的限制符
->: 位址訪問
.:變數訪問
&:&p取位址;&10與運算
*: *p指標; *10乘法
C語言運算子總結心得
一 邏輯運算子 包括 邏輯與 邏輯或 邏輯非 邏輯運算子用於對包含關係運算子的表示式進行合併或取非 對於使用邏輯運算子的表示式,返回0表示 假 返回1表示 真 關於邏輯運算子的解釋 請注意 任何使用兩個字元做符號的運算子,兩字元之間不應有空格,即將 寫成 是錯誤的。假設乙個程式在同時滿足條件a 10...
C語言運算子簡單總結
1.算術運算子 將兩個數從左向右進行相加運算 將兩個數從左向右進行相減運算 將兩個數從左向右進行相乘運算 將兩個數從左向右進行除法運算,若兩數都為整數,則結果為整數部分 若有一為浮點數,則結 果為浮點數 對左運算元進行模右運算元運算,即算術求餘 自增運算,數值加1。b a,a先進行自增運算,再把結果...
C語言 運算子與 運算子
我們平時使用帶參巨集時,字串中的巨集引數是沒有被替換的。例如 輸出結果為 然而,我們期望輸出的結果是 5 20 2513 14 27 這該怎麼做呢?其實,c語言允許在字串中包含巨集引數。在類函式巨集 帶參巨集 中,號作為乙個預處理運算子,可以把記號轉換成字串。例如,如果a是乙個巨集形參,那麼 a就是...