C語言操作符

2021-08-13 20:31:09 字數 2298 閱讀 5092

c語言操作符

+  -  *   /  %

除了%操作符只能用於

int

型,剩餘都可用在

float

和int

型《左移操作符:左邊拋棄,右邊補0。

>>右移操作符:

(1):邏輯移位:左邊用0填充,右邊丟棄。

(2):算術移位:左邊用原該值的符號位填充,右邊丟棄。

邏輯移位需要注意只可用於正數在負數中不適合(在計算機儲存中32位位元位中第一位預設為符號位:

正數為0,負數為

1)。電腦中預設為算術移位

注意!!!!!對於移位運算子,不要移動負數字。

按位與& ;按位或

|;按位異或^。

&:對應位元位都為

1,按位與後對應位元位為

1。其餘都為0

|:對應位元位有乙個為

1,按位或後對應位元位為

1,其餘為0

^:對應位元位相同為

0,不同為1。

eg:1和

3的三種操作符計算

1的位元位:

00000000  00000000  00000000  00000001

3的位元位:

00000000  00000000  00000000  00000011

1&3:

00000000  00000000  00000000  00000001

1|3:

00000000  00000000  00000000  0000000  

1^3:  00000000  00000000  00000000  000000010

按位操作符計算的都是整數。

只有=。

賦值操作符可以連續使用,eg:

a=x=y+1;(1)   x=y+1; a=x;(2)

大家可以看出來第二種比較好看一些,而且易於除錯。

+=(x=x+1

); -=(x=x-1) ;  

類似的還有

*=  /=  %=  >>=  <<=  &=  |=  ^=

這些操作符都可以達成復合的效果。

!:邏輯反操作; - + 正負值;

&sizeof

:運算元的型別長度

~:對乙個二進位制按位取反;  

-- ++

:前後置

++  --

;   

*:間接訪問操作符

(型別):強制型別轉換。

特別注意的是sizeof 這個操作符:

&陣列名,

sizeof

(陣列名)不代表首元素位址,代表整個陣列。除此之外所以陣列名都是首元素位址。

&arr+1: 跳過整個陣列

<  <=  >  >=  !=(不相等)  

==(相等)

特別注意if()括號中的判斷語句用

==  

不是賦值語句中的等號。

八、邏輯操作符

邏輯與:&&   邏輯或||

給出乙個邏輯也和或的特點:

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\n d=%d\n

」,a,b,c,d)

兩種運算下輸出的答案有什麼不同

進行&&時:輸出為  

1  2  3  4  

當第乙個

a++為

0時值為假後面運算不運算。

進行||時: 輸出為  

1  3  3  4  

當第乙個為

0 ++b為1

時值為真後面運算不運算。

exp1  ?  exp2  :  exp3

exp1  為判斷式,解讀為

exp1

為真時取值

exp2

,為假時取值

exp2.

逗號表示式,就是用逗號隔開的多個表示式。從左向右依次執行。整個表示式的結果是最後乙個表示式結果。

1. 【】

運算元:乙個陣列名+乙個索引值

eg:int arr【10

】;//

建立乙個陣列

2()函式呼叫操作符:接受乙個或者多個運算元:第乙個運算元是函式名,剩餘的運算元就是傳遞給函式的引數。

3:訪問乙個結構的成員

. 結構體

.成員名

-> 結構體指標

->

成員名

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 對於 操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。...