操作符
一、操作符的分類
1. 算數操作符
2. 位移操作符
3. 位操作符
4. 賦值操作符
5. 單目操作符
6. 關係操作符
7. 邏輯操作符
8. 條件操作符
9. 逗號操作符
10. 下標引用、函式呼叫和結構成員
二、逐個講解
1、 算數操作符
+ - * / %
1)除了%操作符之外,其他的幾個操作符可以作用於整數和浮點數。
2)對於/操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。
3)%操作符的兩個運算元必須為整數。返回的是整除之後的餘數。
2、位移操作符
>>右位移操作符 《左位移操作符
1)左位移操作符
位移規則:左邊拋棄,右邊補0
在沒有賦值的情況下自身的值不發生變化。
int num= 10;
num<<1; //num的值沒有發生變化還是10
num= num<<1; //num的值才發生變化,位20
2)右移操作符
首先右移分兩種:
a)邏輯位移
左邊用0填充,右邊丟棄
unsignedint num = 0xffffffff//是-1的補碼的形式
printf(「%d」,num); //輸出的是-1而不是乙個整數,因為%d是按十進位制整數的格式輸出,
printf(「%u」,num); //輸出的是乙個最大的正數,%u表示輸出的是無符號的
num= num>>1; //結果是0x7fffffff
b)算數字移
左邊用原來的符號位填充,右邊丟棄。
intnum = 0xffffffff;
num= num>>1;//num的值位0xffffffff -1的補碼
3、位操作符
& //按位與 |//按位或 ^ //按位異或
它們的運算元必須是正數
4賦值操作符
+= -= *= /= %= >>= <<= &= |= ^=
5、單目操作符
!邏輯反操作 -負值 +正值 &取位址 sizeof運算元的型別長度(以位元組位單位) ~對乙個二進位制數按位取反 --前置、後置 -- ++前置、後置++
*間接訪問操作符(解引用操作符)(型別)強制型別轉換操作符
sizeof 是乙個操作符不是函式 int a = 0;sizeof (a)和sizeofa都是正確的,但是sizeof(int)正確 sizeof int 錯誤 前置++a,--a 先計算a++和--後a的值,早使用a後置a--,a++ 先使用a的值,然後a的值再自增,自減
6、 關係操作符
< <= > >= != ==
7、邏輯操作符
&& 邏輯與 ||邏輯或
區分按位與和邏輯與
1&2-------->0 1&&2-------->1
1|2--------->3 1||2----------->1
a&&b&&c 當a的值為0,則不再判斷b和c,也不再計算b和c的值
a||b||c 當a的值為1,則不再判斷b和c,也不再計算b和c的值
8、 條件操作符
exp1 ? exp2 : exp3
如果exp1結果為真,表示式的結果為exp2的結果,否則為exp3的結果
a> b? max=a : max = b;也可以寫為 max = a>b? a : b;
9、逗號表示式
逗號表示式從左向右依次執行,整個表示式的結果是最後乙個表示式的結果。
操作符總結
通過一段時間的學習,我今天要給大家總結一下操作符。首先呢,操作符分為 算術操作符 移位操作符 位操作符 賦值操作符 單目操作符 關係操作符 邏輯操作符 條件操作符 逗號表示式 下標引用 函式呼叫和結構成員 接下來要具體介紹這些操作符有哪些作用,還有那些要注意的事項。1.算術操作符 除了 操作符之外,...
操作符總結
操作符是c語言學習中很重要的一部分。下面是我關於c語言學習中,對於操作符的總結。1 算術操作符 兩個數字相加減乘除。這四個操作符可以用於整數和浮點數。特別注意用 這個操作符時,如果兩個數都為整 數,那麼執行整數除法,有乙個數字為浮點數,則執行浮點數除法。除數為0沒有意義。將兩個數字相除,取餘數。這個...
操作符總結
c語言操作符簡述 1.算數操作符 針對的是整形和浮點型的運算。其中乘除法對於整數的結果是整數,對於浮點數的結果是浮點數。2.移位操作符 右移操作符 右移操作時分為兩種情況 1 算數右移 二進位制有正負之分,補位時要注意符號位 不需要考慮符號位的問題,直接補0即可。3.位操作符 按位與 按位或 按位異...