操作符分類:
操作符詳解:
算術運算子
+ - * 、 %
數學上的加減乘除、取餘。這幾個比較常見,需要注意的有:
/
操作如果兩側的引數都是整型,那麼得到的結果也會是乙個整型,例如:5/2結果為2。
而如果其中乙個為float型別則結果會為float型別,例如:5/2.0結果為2.5。
%
操作只能進行整數的取餘運算。
移位運算子
《左移運算子
左邊拋棄,右邊補零。
>>右移運算子
右移運算子分為兩種:
左邊填充0,右邊丟棄
左邊用該值的符號位填充,右邊丟棄
*:移位操作符不能移動負位數
位操作符
&按位與
|按位或
^按位異或
賦值操作符
=
操作符可以將右邊的值存入左邊的變數中,可以對變數重複賦值
注意:復合賦值操作符=
操作符應該和==
操作符區分開,它們的意義不一樣特殊的:
=
表示式的值等於=
右邊的值,比如a=3這個表示式的值就為3,a=0這個表示式的值就為0。
以上提到的操作符都可以進行復合賦值操作。
比如a+=2
就和a=a+2
是相同的意思
再比如a^=b
就和a=a^b
是相同的意思
以此類推
單目操作符
單目操作符可以理解為「單個目標數操作符」,也就是說這個操作符只可以對乙個目標進行運算。如:
關係操作符
>
>=
<
<=
==
!=
這些用於比較的符號都是關係操作符。
注意區分邏輯操作符==
和=
的區別。
&&
邏輯與
||
邏輯或
1&&0—->0
1&&1—->1
1 || 0—->1
0 || 0—->0
要區分&&
和&
的區別,&
是將兩個數按二進位制每一位進行&&
最後的結果。
比如:1&&2—->1
1&2—->0
條件操作符||
和|
同理
形如a?b:c
這種格式的為條件操作符,其中a、b、c可以為數值或表示式。
意思為a是否為真,如果a為真,這個表示式的值為b,否則為c。
例如下面這個語句:
int x,y,z;y=1;z=2;x=y>z?y:z;
經過運算得出x的值應該為2。逗號表示式
逗號表示式是一種很特殊的存在,用,
隔開的兩個數值(表示式),整個表示式的值等於最後乙個數值(表示式),與前面的數值(表示式)無關。
例如:
1,2,0
這個表示式的值為0,與前面的1,2都沒有關係
下標引用、函式呼叫和結構成員
[ ]
用於陣列的下標引用
( )
用於呼叫函式,左邊的運算元為函式名,右邊的均為函式引數
.
和->
都用於訪問結構體成員,不過.
操作符前面需要用結構體名,而->
操作符前面要用結構體指標,不能混用。
操作符運算優先順序:
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 對於 操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。...