操作符對於乙個程式設計師來說,是最熟悉不過的了,其數目繁多,單個容易理解,但是組合起來就不太容易讓人理解 了,操作符對於計算機世界來說,十分有必要,可以更加便於計算機運算。
除了%操作符之外,其他的幾個操作符可以作用於整數和浮點數。
對於/操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。
%操作符的兩個運算元必須為整數。返回的是整除之後的餘3. %操作符的兩個運算元必須為整數。返回的是整除之後的餘
賦值操作符
這再熟悉不過了 = 當我們多變數賦值時我們就需要用到它
// 連續賦值
int a =0;
int x =1;
int y =4;
a = x = y +
1;
操作符
例子轉換
+=x += 1
x = x + 1
-=x -= 1
x = x - 1
/=x /= 1
x = x / 1
%=x %= 1
x = x % 1
>>=
x >>= 1
x = x >> 1
<<=
x <<= 1
x = x << 1
&=x &= 1
x = x & 1
丨=x 丨= 1
x = x 丨 1
^=x ^= 1
x = x ^ 1
單目操作符
操作符含義
!邏輯取反–負值
+正值~按位取反
- -前置、後置 - -
++前置、後置 ++
*間接訪問操作符(解引用)
&取位址
sizeof
運算元的型別長度
printf
("%d\n"
,sizeof
(a))
;printf
("%d\n"
,sizeof
(int))
;printf
("%d\n"
,sizeof a)
;printf
("%d\n"
,sizeof
int)
// 這樣寫等價
int a =10;
int x =
++a;
//先對a進行自增,然後對使用a,也就是表示式的值是a自增之後的值。x為11
int y =
--a;
//先對a進行自減,然後對使用a,也就是表示式的值是a自減之後的值。y為
int a =10;
int x = a++
;//先對a先使用,再增加,這樣x的值是10;之後a變成11;
int y = a--
;//先對a先使用,再自減,這樣的值是11;之後a變成1
int i =1;
int ret =
(++i)+(
++i)+(
++i)
;printf
("%d\n"
, ret)
;// vs 12 linux gcc 10
printf
("%d\n"
, i)
;// vs 4 linux 4
這段**中的第乙個 + 在執行的時候,第三個++是否執行,這個是不確定的,因為依靠操作符的優先順序和結合性
是無法決定的
操作符含義&&
邏輯與丨丨
邏輯或
1&2
----
->
0//01 & 10 --> 01&&
2---->
1//true1|
2----->
3// 01 || 10 --> 111||
2----1
// true
int i =
0,a=
0,b=
2,c =
3,d=4;
i = a++
&&++b && d++
;// i = ++a && ++b && d++
printf
("a = %d\n b = %d\n c = %d\nd = %d\n"
, a, b, c, d)
;//a=1 b=2 c=3 d=4 | a=1 b=3 c=3 d=5
//左邊為假右邊不運算
i = a++
||++b||d++
;// i = ++a || ++b || d++
printf
("a = %d\n b = %d\n c = %d\nd = %d\n"
, a, b, c, d)
;//a=1 b=3 c=3 d=4 | a=1 b=2 c=3 d=4
// 左邊為真右邊不運算
if (a > 5)
b = 3;
else
b = -3;
a>
5? b=
3: b =
-3
exp1, exp2, exp3, …expn
逗號表示式,就是用逗號隔開的多個表示式。 逗號表示式,從左向右依次執行。整個表示式的結果是最後乙個表示式的結果 c語言操作符 位操作符 移位操作符
1 按位操作符 1.1 按位 與 雙目運算子 僅當兩個運算元都為1時,結果為1,否則為0。參與運算的數以補碼方式出現。例 9 5 1 0000 1001 9的補碼 0000 0101 5的補碼 0000 0001 1的補碼 應用 a 通常將某些位清零或保留某些位。例如 將a的高八位清零,保留低八位,...
C語言 , 操作符
例如 define to string s s 將會使編譯器把以下命令 cout to string hello world endl 理解為cout hello world endl 例如 define concatenate x,y x y int xy 10 將會使編譯器把 cout conc...
C語言操作符
操作符的分類 1 算術操作符 2 移位操作符 3 位操作符 4 賦值操作符 5 單目操作符 6 關係操作符 7 邏輯操作符 8 條件操作符 9 逗號表示式 1 算術操作符 1 除了 操作符之外,不能用於浮點數。2 對於 操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。...