通過一段時間的學習,我今天要給大家總結一下操作符。首先呢,操作符分為
算術操作符
移位操作符
位操作符
賦值操作符
單目操作符
關係操作符
邏輯操作符
條件操作符
逗號表示式
下標引用、函式呼叫和結構成員
接下來要具體介紹這些操作符有哪些作用,還有那些要注意的事項。
1.算術操作符
+ - * / %
除了%操作符之外,其他的幾個操作符可以作用於整數和浮點數,並且%操作符的兩個運算元必須為整數,返回的是整除之後的餘數。
2.移位操作符
左移操作符 <<
右移操作符 >>
左移規則:左邊拋棄,右邊補零。
右移規則:
(1)邏輯移位:左邊補0,右邊丟棄
(2)算術移位:左邊用原該值的符號位填充,右邊丟棄
對於移位運算子,不要移動負位數,這個是標準未定義的。
3.位操作符
& 按位與
| 按位或
^ 按位異或
位操作符的運算元必須是整數。
例如:
#include int main()
4.賦值操作符
賦值操作符 =,它還可以跟許多操作符構成復合操作符。
復合操作符:
+=-=
*=/=
%=<<=
&=|=
^=5.單目操作符
邏輯反操作 !
負值 -
正值 +
取位址 &
運算元的型別長度(以位元組為單位)sizeof
對乙個數的二進位制按位取反 ~
前置、後置 - -
前置、後置 ++
間接訪問操作符(解引用操作符) *
強制型別轉換 (型別)
注意:sizeof與陣列
sizeof(arr)求整個陣列的大小
#include int main()
; printf("%d\n", sizeof(arr));
return 0;
}
++a 先對a進行自增,然後使用a
a++ 先對先a使用,再增加,
與上述相同的還有- -。
演示**:
//前置++和--
#include int main()
//後置++和--
#include int main()
6.關係操作符
<
>
<=
>=
!===
7.邏輯操作符
&& 邏輯與
|| 邏輯或
a++ && ++b && d++如果前面為假,則後面不用算
a++ || ++b || d++如果前面為真,則後面不用算
演示**:
#include int main()
8.條件表示式
exp1 ?exp2 :exp3
表示式1為真,執行表示式2。表示式1為假,執行表示式3。
9.逗號表示式
exp1 ,exp2 ,exp3,…
逗號表示式,從左向右執行,整個表示式的結果是最後乙個表示式的結果。
10.下標引用、函式呼叫和結構成員
(1)下標引用操作符
運算元: 乙個陣列名 + 乙個索引道
int arr[10];
arr[9] = 10;
(2)函式呼叫操作符 接受乙個或多個運算元:第乙個運算元是函式名,剩餘的運算元就是傳遞給函式的引數。
演示**:
#include void test1()
void test2(const char *str)
int main()
(3)訪問乙個結構的成員
結構體.成員名
結構體指標->成員名
演示**:
#include struct stu
;void set_age1(struct stu stu)
void set_age2(struct stu* pstu)
int main()
總結操作符
操作符 一 操作符的分類 1.算數操作符 2.位移操作符 3.位操作符 4.賦值操作符 5.單目操作符 6.關係操作符 7.邏輯操作符 8.條件操作符 9.逗號操作符 10.下標引用 函式呼叫和結構成員 二 逐個講解 1 算數操作符 1 除了 操作符之外,其他的幾個操作符可以作用於整數和浮點數。2 ...
操作符總結
操作符是c語言學習中很重要的一部分。下面是我關於c語言學習中,對於操作符的總結。1 算術操作符 兩個數字相加減乘除。這四個操作符可以用於整數和浮點數。特別注意用 這個操作符時,如果兩個數都為整 數,那麼執行整數除法,有乙個數字為浮點數,則執行浮點數除法。除數為0沒有意義。將兩個數字相除,取餘數。這個...
操作符總結
c語言操作符簡述 1.算數操作符 針對的是整形和浮點型的運算。其中乘除法對於整數的結果是整數,對於浮點數的結果是浮點數。2.移位操作符 右移操作符 右移操作時分為兩種情況 1 算數右移 二進位制有正負之分,補位時要注意符號位 不需要考慮符號位的問題,直接補0即可。3.位操作符 按位與 按位或 按位異...