国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>

這篇具有很好參考價(jià)值的文章主要介紹了學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

目錄

前言

一、原碼、反碼、補(bǔ)碼的基礎(chǔ)概念

1.原碼

2.反碼

3.補(bǔ)碼

二、原碼、反碼、補(bǔ)碼的計(jì)算方法

1.原碼

2.反碼

3.補(bǔ)碼

三、算術(shù)操作符

四、移位操作符

1. 左移操作符

移位規(guī)則:

2. 右移操作符

移位規(guī)則:

(1) 邏輯移位

(2) 算術(shù)移位

五、位操作符

1. 按位與運(yùn)算(AND)

2. 按位或運(yùn)算(OR)

3. 按位異或運(yùn)算(XOR)

4. 取反運(yùn)算(NOT)?

5. 位運(yùn)算的應(yīng)用

(1)判斷整數(shù)奇偶?

(2)二進(jìn)制數(shù)選取指定位?

(3)將指定位設(shè)置為?1?

(4)反轉(zhuǎn)指定位?

(5)交換兩個(gè)數(shù) —— 不借助第三變量

(6)將二進(jìn)制最右側(cè)為?1?的二進(jìn)位改為?0?

(7)計(jì)算二進(jìn)制中二進(jìn)位為?1?的個(gè)數(shù)?

(8)判斷某數(shù)是否為?2?的冪次方?

六、賦值操作符

七、單目操作符

八、關(guān)系操作符

九、邏輯操作符

1.區(qū)分邏輯與和按位與

2.區(qū)分邏輯或和按位或

十、條件操作符(三目操作符)

?使用條件表達(dá)式得到兩個(gè)數(shù)的較大值

十一、逗號(hào)表達(dá)式

十二、下標(biāo)引用、函數(shù)調(diào)用和結(jié)構(gòu)成員

1. [ ] 下標(biāo)引用操作符

?2. ( ) 函數(shù)調(diào)用操作符

3. 訪問(wèn)一個(gè)結(jié)構(gòu)的成員

十三、操作符的屬性

1. 復(fù)雜表達(dá)式的求值有三個(gè)影響的因素

操作符優(yōu)先級(jí)

表格說(shuō)明


前言??

????????學(xué)了這么長(zhǎng)時(shí)間的C語(yǔ)言,我也刷了不少的題目,其中每到遇見(jiàn)關(guān)于操作題這樣的概念類型的選擇題我都要標(biāo)記一下,或者直接瞎選一個(gè)。現(xiàn)在趁著剛剛考試完期末周的勁頭還沒(méi)有過(guò)去,碩碩就趕緊復(fù)習(xí)加上查找資料創(chuàng)作出來(lái)了一篇關(guān)于C語(yǔ)言操作符的博客。各位看官坐穩(wěn)扶好了,我們要發(fā)車了????

一、原碼、反碼、補(bǔ)碼的基礎(chǔ)概念

????????在要學(xué)習(xí)下面的位操作符之前,讓我們先了解原碼、反碼和補(bǔ)碼的概念。對(duì)于一個(gè)數(shù)計(jì)算機(jī)要使用一定的編碼方式進(jìn)行存儲(chǔ),原碼、反碼、補(bǔ)碼是機(jī)器存儲(chǔ)一個(gè)具體數(shù)字的編碼方式。

1.原碼

??????????原碼就是符號(hào)位加上真值的絕對(duì)值,即:用第一位表示符號(hào),其余位表示值。

比如:如果是8位二進(jìn)制:

[+1]? ?正一的原碼 = 0 000 0001

[-1]? 負(fù)一的原碼? = 1 000 0001

??????????第一位是符號(hào)位

??????????因?yàn)榈谝晃皇欠?hào)位,所以8位二進(jìn)制數(shù)的取值范圍就是:(即第一位不表示值,只表示正負(fù)。)

?????????[1111 1111 , 0111 1111]? 即 [-127 , 127]

??????????總結(jié)一句話:原碼是人腦最容易理解和計(jì)算的表示方式。

2.反碼

??????????反碼的表示方法是:正數(shù)的反碼是其本身,負(fù)數(shù)的反碼是在其原碼的基礎(chǔ)上,符號(hào)位不變,其余各個(gè)位取反。

原碼 反碼
+1 0 000 0001 0 000 0001
- 1 1 000 0001 1 111 1110

??????????可見(jiàn)如果一個(gè)反碼表示的是負(fù)數(shù),人腦無(wú)法直觀的看出來(lái)它的數(shù)值。通常要將其轉(zhuǎn)換成原碼再計(jì)算。

3.補(bǔ)碼

??????????補(bǔ)碼的表示方法是:正數(shù)的補(bǔ)碼就是其本身,負(fù)數(shù)的補(bǔ)碼是在其原碼的基礎(chǔ)上,符號(hào)位不變,其余各位取反,最后+1。(也即在反碼的基礎(chǔ)上+1)

原碼 反碼 補(bǔ)碼
+1 0 000 0001 0 000 0001 0 000 0001
- 1 1 000 0001 1 111 1110 1 111 1111

??????????對(duì)于負(fù)數(shù),補(bǔ)碼表示方式也是人腦無(wú)法直觀看出其數(shù)值的。通常也需要轉(zhuǎn)換成原碼再計(jì)算其數(shù)值

二、原碼、反碼、補(bǔ)碼的計(jì)算方法

1.原碼

??????????原碼:將最高位作為符號(hào)位(0表示正,1表示負(fù)),其它數(shù)字位代表數(shù)值本身的絕對(duì)值的數(shù)字表示方式。

2.反碼

??????????反碼:如果是正數(shù),則表示方法和原碼一樣;如果是負(fù)數(shù),符號(hào)位不變,其余各位取反,則得到這個(gè)數(shù)字的反碼表示形式。

3.補(bǔ)碼

??????????補(bǔ)碼:如果是正數(shù),則表示方法和原碼一樣;如果是負(fù)數(shù),則將數(shù)字的反碼加上1(相當(dāng)于將原碼數(shù)值位取反然后在最低位加1)。

三、算術(shù)操作符

??????????算數(shù)操作符一共有五個(gè)

????????1、+(加)? ? ?

????????2、-(減)? ?

????????3、*(乘)? ? ?

????????4、/(除)? ?

????????5、%(取模)

??1. 除了 %(取模) 操作符之外,其他的幾個(gè)操作符可以作用于整數(shù)和浮點(diǎn)數(shù)。
??2. 對(duì)于 / (除)操作符如果兩個(gè)操作數(shù)都為整數(shù),執(zhí)行整數(shù)除法。而只要有浮點(diǎn)數(shù)執(zhí)行的就是浮點(diǎn)數(shù)除法。
??3. % (取模)操作符的兩個(gè)操作數(shù)必須為整數(shù),返回的是整除之后的余數(shù)。

四、移位操作符

<< 左移操作符
>> 右移操作符

??注:移位操作符的操作數(shù)只能是正數(shù)。
??注:移位操作符的操作數(shù)只能是整數(shù)。

1. 左移操作符


??????????移位規(guī)則:左邊拋棄、右邊補(bǔ)0
????????
學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>

2. 右移操作符

??????移位規(guī)則:


????????首先右移運(yùn)算分兩種:

? ? ? ? ??邏輯移位

? ? ? ? ? 算術(shù)移位


(1) 邏輯移位


????????左邊用0填充,右邊丟棄
?

學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>

(2) 算術(shù)移位


????????左邊用原該值的符號(hào)位填充,右邊丟棄

學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>

警告??
????????對(duì)于移位運(yùn)算符,不要移動(dòng)負(fù)數(shù)位,這個(gè)是標(biāo)準(zhǔn)未定義的。
例如:

int num = 10;
num>>-1;//error

五、位操作符

??位操作符有:

&
|
^
//按位與
//按位或
//按位異或

??注:他們的操作數(shù)必須是整數(shù)。

1. 按位與運(yùn)算(AND)

?????????按位與運(yùn)算符為?&。其功能是對(duì)兩個(gè)二進(jìn)制數(shù)的每一個(gè)二進(jìn)位進(jìn)行與運(yùn)算。

& 按位與: 兩個(gè)條件同時(shí)為真(1)的情況下,運(yùn)算結(jié)果為真,換句話說(shuō)就是兩個(gè)條件都是1才為1,否則為0。

  • 1 & 1 = 1

  • 1 & 0 = 0

  • 0 & 1 = 0

  • 0 & 0 = 0

學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>

2. 按位或運(yùn)算(OR)

?????????按位或運(yùn)算符為?|。其功能對(duì)兩個(gè)二進(jìn)制數(shù)的每一個(gè)二進(jìn)位進(jìn)行或運(yùn)算。

|? 按位或 :任意一個(gè)條件為真(1)的情況下,運(yùn)算結(jié)果為1,就是只要有一個(gè)1則為1,否則為0。

  • 1 | 1 = 1
  • 1 | 0 = 1
  • 0 | 1 = 1
  • 0 | 0 = 0

學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>

3. 按位異或運(yùn)算(XOR)

?????????按位異或運(yùn)算符為?^。其功能是對(duì)兩個(gè)二進(jìn)制數(shù)的每一個(gè)二進(jìn)位進(jìn)行異或運(yùn)算。

^ 按位異或?兩個(gè)條件中只有一個(gè)條件為真(1)的情況下,運(yùn)算結(jié)果為真。也就是說(shuō),相異才為 真,相同則為假。

  • 0 ^ 0 = 0

  • 1 ^ 0 = 1

  • 0 ^ 1 = 1

  • 1 ^ 1 = 0

學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>

4. 取反運(yùn)算(NOT)?

?????????取反運(yùn)算符為?~。其功能是對(duì)一個(gè)二進(jìn)制數(shù)的每一個(gè)二進(jìn)位進(jìn)行取反運(yùn)算。

????????取反運(yùn)算規(guī)則:使數(shù)字?1?變?yōu)?0,0?變?yōu)?1。?

  • ~0 = 1
  • ~1 = 0

學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>

5. 位運(yùn)算的應(yīng)用

(1)判斷整數(shù)奇偶?

??????????一個(gè)整數(shù),只要是偶數(shù),其對(duì)應(yīng)二進(jìn)制數(shù)的末尾一定為?0;只要是奇數(shù),其對(duì)應(yīng)二進(jìn)制數(shù)的末尾一定為?1。所以,我們通過(guò)與?1?進(jìn)行按位與運(yùn)算,即可判斷某個(gè)數(shù)是奇數(shù)還是偶數(shù)。

  1. (x & 1) == 0?為偶數(shù)。
  2. (x & 1) == 1?為奇數(shù)

(2)二進(jìn)制數(shù)選取指定位?

??????????如果我們想要從一個(gè)二進(jìn)制數(shù)?X中取出某幾位,使取出位置上的二進(jìn)位保留原值,其余位置為?0,則可以使用另一個(gè)二進(jìn)制數(shù) Y ,使該二進(jìn)制數(shù)上對(duì)應(yīng)取出位置為?1,其余位置為?0。然后令兩個(gè)數(shù)進(jìn)行按位與運(yùn)算(X & Y),即可得到想要的數(shù)。

(3)將指定位設(shè)置為?1?

??????????如果我們想要把一個(gè)二進(jìn)制數(shù) X中的某幾位設(shè)置為?1,其余位置保留原值,則可以使用另一個(gè)二進(jìn)制數(shù) Y,使得該二進(jìn)制上對(duì)應(yīng)選取位置為?1,其余位置為?0。然后令兩個(gè)數(shù)進(jìn)行按位或運(yùn)算(X | Y),即可得到想要的數(shù)。

(4)反轉(zhuǎn)指定位?

?????????如果我們想要把一個(gè)二進(jìn)制數(shù) X 的某幾位進(jìn)行反轉(zhuǎn),則可以使用另一個(gè)二進(jìn)制數(shù) Y ,使得該二進(jìn)制上對(duì)應(yīng)選取位置為?1,其余位置為?0。然后令兩個(gè)數(shù)進(jìn)行按位異或運(yùn)算(X ^ Y),即可得到想要的數(shù)。

(5)交換兩個(gè)數(shù) —— 不借助第三變量

??????????通過(guò)按位異或運(yùn)算可以實(shí)現(xiàn)交換兩個(gè)數(shù)的目的(只能用于交換兩個(gè)整數(shù))。

#include <stdio.h>
int main()
{
int a = 10;
int b = 20;
a = a^b;
b = a^b;
a = a^b;
printf("a = %d b = %d\n", a, b);
return 0;
}

(6)將二進(jìn)制最右側(cè)為?1?的二進(jìn)位改為?0?

??????????如果我們想要將一個(gè)二進(jìn)制數(shù) X 最右側(cè)為?1?的二進(jìn)制位改為?0,則只需通過(guò)?X & (X - 1)?的操作即可完成。

(7)計(jì)算二進(jìn)制中二進(jìn)位為?1?的個(gè)數(shù)?

??????????從“將二進(jìn)制最右側(cè)為?1?的二進(jìn)位改為?0 ”中得知,通過(guò)?X & (X - 1)?我們可以將二進(jìn)制 X 最右側(cè)為?1?的二進(jìn)制位改為?0,那么如果我們不斷通過(guò)?X & (X - 1)?操作,最終將二進(jìn)制 X?變?yōu)?0,并統(tǒng)計(jì)執(zhí)行次數(shù),則可以得到二進(jìn)制中二進(jìn)位為?1?的個(gè)數(shù)。

#include <stdio.h>
int TheOne(int x)
{
    int count = 0;
    while(x)
    {
        x = x & (x - 1);
        count++;
    }
return count;
}

(8)判斷某數(shù)是否為?2?的冪次方?

??????????通過(guò)判斷?X & (X - 1) == 0?是否成立,即可判斷 X?是否為?2?的冪次方。這是因?yàn)椋?/strong>

??凡是?2?的冪次方,其二進(jìn)制數(shù)的某一高位為?1,并且僅此高位為?1,其余位都為?0。

??不是?2?的冪次方,其二進(jìn)制數(shù)存在多個(gè)值為?1?的位。

??????????接下來(lái)我們使用?X & (X - 1)?操作,將原數(shù)對(duì)應(yīng)二進(jìn)制數(shù)最右側(cè)為?1?的二進(jìn)位改為?0?之后,得到新值:

  1. 如果原數(shù)是?2?的冪次方,則通過(guò)?X & (X - 1)?操作之后,新值所有位都為?0,值為?0。
  2. 如果該數(shù)不是?2?的冪次方,則通過(guò)?X & (X - 1)?操作之后,新值仍存在不為?0?的位,值肯定不為?0。

??????????所以我們可以通過(guò)是否為?0?即可判斷該數(shù)是否為?2?的冪次方。

六、賦值操作符

???????????賦值操作符是一個(gè)很好用的操作符,他可以讓你得到一個(gè)你之前不滿意的值也就是你可以給自己重新賦值

復(fù)合賦值符
1、? + =
2、? - =
2、? * =
4、? / =
5、?%=
6、? >>=
7、? <<=
8、? &=
9、? |=
10、^=

??????????這些運(yùn)算符都可以寫成復(fù)合的效果

int x = 10;
x = x+10;
x += 10;//復(fù)合賦值
//其他運(yùn)算符一樣的道理。這樣寫更加簡(jiǎn)潔。

七、單目操作符

! 邏輯反操作
- 負(fù)值
+ 正值
& 取地址
sizeof 操作數(shù)的類型長(zhǎng)度(以字節(jié)為單位)
~ 對(duì)一個(gè)數(shù)的二進(jìn)制按位取反
- - 前置、后置- -
+ + 前置、后置++
* 間接訪問(wèn)操作符(解引用操作符)
(類型) 強(qiáng)制類型轉(zhuǎn)換

八、關(guān)系操作符

> 用于比較左右兩個(gè)值的大小
>= 用于比較左右兩個(gè)值的大小

<

用于比較左右兩個(gè)值的大小

<=

用于比較左右兩個(gè)值的大小
! = 用于測(cè)試“不相等”
== 用于測(cè)試“相等”

? ? ? ? ? ? ?這些關(guān)系運(yùn)算符比較簡(jiǎn)單,但是我們要注意一些運(yùn)算符使用時(shí)候的陷阱。
??????????警告:在編程的過(guò)程中== 和=不小心寫錯(cuò),導(dǎo)致的錯(cuò)誤

九、邏輯操作符

&& 邏輯與
|| 邏輯或

1.區(qū)分邏輯與和按位與


按位與:1&2----->0
邏輯與:1&&2---->1

2.區(qū)分邏輯或和按位或


按位或:1|2----->3
邏輯或:1||2---->1

十、條件操作符(三目操作符)

exp1 ? exp2 : exp3

這個(gè)也是三目操作符

???? ??如果表達(dá)式1為真,那么就計(jì)算表達(dá)式2,表達(dá)式2的結(jié)果為整個(gè)式子的 結(jié)果;
???????如果表達(dá)式1為假,那么就計(jì)算表達(dá)式3,表達(dá)式3的結(jié)果為整個(gè)式子的結(jié)果。

例:?jiǎn)枺簩⑾铝惺阶愚D(zhuǎn)化為條件表達(dá)式是什么樣的?

if (a > 5)
	b = 3;
else 
	b = -3; 

?答案:

b = (a > 5 ? 3 : -3);

?使用條件表達(dá)式得到兩個(gè)數(shù)的較大值

#include<stdio.h>
int main(void)
{		
   int a = 0, b = 0, c = 0;
   printf("請(qǐng)輸入兩個(gè)數(shù):\n");
   scanf_s("%d %d", &a, &b);
   c = (a > b ? a : b);
   printf("較大的數(shù)為:%d\n", c);
   return 0;
}

十一、逗號(hào)表達(dá)式

exp1, exp2, exp3, …expN

?逗號(hào)表達(dá)式,就是用逗號(hào)隔開(kāi)的多個(gè)表達(dá)式。
?逗號(hào)表達(dá)式,從左向右依次執(zhí)行。整個(gè)表達(dá)式的結(jié)果是最后一個(gè)表達(dá)式的結(jié)果。

int a = 1;
int b = 2;
int c = (a>b, a=b+10, a, b=a+1);//逗號(hào)表達(dá)式

????????上面C的值最后等于13

十二、下標(biāo)引用、函數(shù)調(diào)用和結(jié)構(gòu)成員 ?

1. [ ] 下標(biāo)引用操作符


操作數(shù):一個(gè)數(shù)組名 + 一個(gè)索引值

int arr[10];//創(chuàng)建數(shù)組
arr[9] = 10;//實(shí)用下標(biāo)引用操作符。
[ ]的兩個(gè)操作數(shù)是arr和9。

?2. ( ) 函數(shù)調(diào)用操作符


??????????接受一個(gè)或者多個(gè)操作數(shù):第一個(gè)操作數(shù)是函數(shù)名,剩余的操作數(shù)就是傳遞給函數(shù)的參數(shù)。?

#include <stdio.h>
void test1()
{
printf("hehe\n");
}
void test2(const char *str)
{
printf("%s\n", str);
}
int main()
{
test1(); //實(shí)用()作為函數(shù)調(diào)用操作符。
test2("hello bit.");//實(shí)用()作為函數(shù)調(diào)用操作符。
return 0;
}

3. 訪問(wèn)一個(gè)結(jié)構(gòu)的成員

. 結(jié)構(gòu)體.成員名
-> 結(jié)構(gòu)體指針->成員名
#include <stdio.h>
struct Stu
{
    char name[10];
    int age;
    char sex[5];
    double score;
}
void set_age1(struct Stu stu)
{
    stu.age = 18;
}
    void set_age2(struct Stu* pStu)
{
    pStu->age = 18;//結(jié)構(gòu)成員訪問(wèn)
}
int main()
{
    struct Stu stu;
    struct Stu* pStu = &stu;//結(jié)構(gòu)成員訪問(wèn)
    stu.age = 20;//結(jié)構(gòu)成員訪問(wèn)
    set_age1(stu);
    pStu->age = 20;//結(jié)構(gòu)成員訪問(wèn)
    set_age2(pStu);
    return 0;
}

十三、操作符的屬性

1. 復(fù)雜表達(dá)式的求值有三個(gè)影響的因素


1. 操作符的優(yōu)先級(jí)
2. 操作符的結(jié)合性
3. 是否控制求值順序。
????????兩個(gè)相鄰的操作符先執(zhí)行哪個(gè)?取決于他們的優(yōu)先級(jí)。如果兩者的優(yōu)先級(jí)相同,取決于他們的結(jié)合性。


操作符優(yōu)先級(jí)(表)

優(yōu)先級(jí)

運(yùn)算符

名稱或含義

使用形式

結(jié)合方向

說(shuō)明

1

[ ]

數(shù)組下標(biāo)

數(shù)組名[常量表達(dá)式]

左到右

-----

( )

圓括號(hào)

(表達(dá)式)/函數(shù)名(形參表)

-----

.

成員選擇(對(duì)象)

對(duì)象.成員名

-----

->

成員選擇(指針)

對(duì)象指針->成員名

-----

2

-

負(fù)號(hào)運(yùn)算符

-表達(dá)式

右到左

單目運(yùn)算符

(類型)

強(qiáng)制類型轉(zhuǎn)換

(數(shù)據(jù)類型)表達(dá)式

-----

++

前置自增運(yùn)算符

++變量名

單目運(yùn)算符

++

后置自增運(yùn)算符

變量名++

單目運(yùn)算符

--

前置自減運(yùn)算符

--變量名

單目運(yùn)算符

--

后置自減運(yùn)算符

變量名--

單目運(yùn)算符?[4]?

*

取值運(yùn)算符

*指針變量

單目運(yùn)算符

&

取地址運(yùn)算符

&變量名

單目運(yùn)算符

!

邏輯非運(yùn)算符

!表達(dá)式

單目運(yùn)算符

~

按位取反運(yùn)算符

~表達(dá)式

單目運(yùn)算符

sizeof

長(zhǎng)度運(yùn)算符

sizeof(表達(dá)式)

-----

3

/

表達(dá)式/表達(dá)式

左到右

雙目運(yùn)算符

*

表達(dá)式*表達(dá)式

雙目運(yùn)算符

%

余數(shù)(取模)

整型表達(dá)式/整型表達(dá)式

雙目運(yùn)算符

4

+

表達(dá)式+表達(dá)式

左到右

雙目運(yùn)算符

-

表達(dá)式-表達(dá)式

雙目運(yùn)算符

5

<<

左移

變量

左到右

雙目運(yùn)算符

>>

右移

變量>>表達(dá)式

雙目運(yùn)算符

6

>

大于

表達(dá)式>表達(dá)式

左到右

雙目運(yùn)算符

>=

大于等于

表達(dá)式>=表達(dá)式

雙目運(yùn)算符

<

小于

表達(dá)式

雙目運(yùn)算符

<=

小于等于

表達(dá)式

雙目運(yùn)算符

7

==

等于

表達(dá)式==表達(dá)式

左到右

雙目運(yùn)算符

!=

不等于

表達(dá)式!= 表達(dá)式

雙目運(yùn)算符

8

&

按位與

表達(dá)式&表達(dá)式

左到右

雙目運(yùn)算符

9

^

按位異或

表達(dá)式^表達(dá)式

左到右

雙目運(yùn)算符

10

|

按位或

表達(dá)式|表達(dá)式

左到右

雙目運(yùn)算符

11

&&

邏輯與

表達(dá)式&&表達(dá)式

左到右

雙目運(yùn)算符

12

||

邏輯或

表達(dá)式||表達(dá)式

左到右

雙目運(yùn)算符

13

? :

條件運(yùn)算符

表達(dá)式1? 表達(dá)式2: 表達(dá)式3

右到左

三目運(yùn)算符

14

=

賦值運(yùn)算符

變量=表達(dá)式

右到左

-----

/ =

除后賦值

變量/=表達(dá)式

-----

* =

乘后賦值

變量*=表達(dá)式

-----

% =

取模后賦值

變量%=表達(dá)式

-----

+ =

加后賦值

變量+=表達(dá)式

-----

- =

減后賦值

變量-=表達(dá)式

-----

<< =

左移后賦值

變量

-----

>> =

右移后賦值

變量>>=表達(dá)式

-----

& =

按位與后賦值

變量&=表達(dá)式

-----

^ =

按位異或后賦值

變量^=表達(dá)式

-----

| =

按位或后賦值

變量|=表達(dá)式

-----

15

,

逗號(hào)運(yùn)算符

表達(dá)式,表達(dá)式,…

左到右

從左向右順序運(yùn)算

表格說(shuō)明

????????同一優(yōu)先級(jí)的運(yùn)算符,運(yùn)算次序由結(jié)合方向所決定。

??????????簡(jiǎn)單記就是:! > 算術(shù)運(yùn)算符 > 關(guān)系運(yùn)算符 > && > || > 賦值運(yùn)算符文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-498688.html

到了這里,關(guān)于學(xué)了那么長(zhǎng)時(shí)間的編程,C語(yǔ)言的各種操作符都搞不懂?點(diǎn)開(kāi)這里有詳細(xì)的介紹—>的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • <C語(yǔ)言> 操作符

    <C語(yǔ)言> 操作符

    加法(+):用于將兩個(gè)操作數(shù)相加。 減法(-):用于將第一個(gè)操作數(shù)減去第二個(gè)操作數(shù)。 乘法(*):用于將兩個(gè)操作數(shù)相乘。 除法(/):用于將第一個(gè)操作數(shù)除以第二個(gè)操作數(shù)。 取模(%):用于求兩個(gè)操作數(shù)相除的余數(shù)。 乘法、除法和取模具有相同的優(yōu)先級(jí),高于加法

    2024年02月12日
    瀏覽(20)
  • 【C語(yǔ)言】操作符

    【C語(yǔ)言】操作符

    算術(shù)操作符 移位操作符 位操作符 賦值操作符 單目操作符 關(guān)系操作符 邏輯操作符 條件操作符 逗號(hào)操作符 下標(biāo)引用、函數(shù)調(diào)用和結(jié)構(gòu)成員操作符 除了 % 操作符之外,其他的幾個(gè)操作符可以作用于整數(shù)和浮點(diǎn)數(shù)。 對(duì)于 / 操作符如果兩個(gè)操作數(shù)都為整數(shù),執(zhí)行整數(shù)除法。而只

    2024年01月16日
    瀏覽(26)
  • 【C語(yǔ)言】操作符詳解

    【C語(yǔ)言】操作符詳解

    ??個(gè)人主頁(yè):Weraphael ???作者簡(jiǎn)介:目前正在回爐重造C語(yǔ)言(2023暑假) ??專欄:【C語(yǔ)言航路】 ?? 希望大家多多支持,咱一起進(jìn)步!?? 如果文章對(duì)你有幫助的話 歡迎 評(píng)論?? 點(diǎn)贊???? 收藏 ?? 加關(guān)注?? 算術(shù)操作符 位移操作符 位操作符 賦值操作符 單目操作符 關(guān)

    2024年02月16日
    瀏覽(25)
  • c語(yǔ)言---操作符(詳解)

    c語(yǔ)言---操作符(詳解)

    算術(shù)操作符: + 、- 、*、/ 、% 移位操作符: 位操作符: | ^ ` 賦值操作符: = 、+= 、 -= 、 = 、 /= 、%= 、= 、= 、= 、|= 、^= 單?操作符: !、++、–、、 、+、-、~ 、sizeof、(類型) 關(guān)系操作符: 、= 、 、= 、 == 、 != 邏輯操作符: 、|| 條件操作符: ? : 逗號(hào)表達(dá)式: , 下標(biāo)引?: [

    2024年02月22日
    瀏覽(25)
  • C語(yǔ)言操作符例題

    感謝各位大佬對(duì)我的支持,如果我的文章對(duì)你有用,歡迎點(diǎn)擊以下鏈接 ?????? 個(gè)人主頁(yè) ?????? C語(yǔ)言 ????????? C語(yǔ)言例題 ?????? python 下面代碼的結(jié)果是:( ) A.a = 8 b = 23 c = 8 B.a = 9 b = 23 c = 8 C.a = 9 b = 25 c = 8 D.a = 9 b = 24 c = 8 答案 B c=++a是先執(zhí)行++a,也就是a=a+1=6(注意這

    2024年02月04日
    瀏覽(18)
  • C語(yǔ)言初級(jí)<操作符>

    C語(yǔ)言初級(jí)<操作符>

    C語(yǔ)言是一門面向過(guò)程的、抽象化的通用程序設(shè)計(jì)語(yǔ)言,廣泛應(yīng)用于底層開(kāi)發(fā)。C語(yǔ)言能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器。C語(yǔ)言是僅產(chǎn)生少量的機(jī)器語(yǔ)言以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的高效率程序設(shè)計(jì)語(yǔ)言。 本篇文章是基于C語(yǔ)言,對(duì)入門小知識(shí)操作符的講解,展

    2024年02月12日
    瀏覽(20)
  • C語(yǔ)言的操作符

    C語(yǔ)言中的操作符是用于操作變量、常量和表達(dá)式的符號(hào),以下是我學(xué)習(xí)操作符整理的相關(guān)知識(shí)點(diǎn)。 算數(shù)操作符: + - * / % + 、 - 、 * 、 / 可以用于操作整數(shù)和浮點(diǎn)數(shù) % 只能操作整數(shù),返回整除后的余數(shù) 左移操作符 右移操作符 這兩個(gè)只能用于整數(shù) 操作符 操作符 位操作符: | ^

    2024年02月01日
    瀏覽(14)
  • C語(yǔ)言:“~”操作符詳解

    ~:含義及用法舉例 文章目錄 前言 一、“~”是什么? 二、原碼、反碼及補(bǔ)碼 1.簡(jiǎn)介 2.用法舉例 ①正整數(shù) ②負(fù)整數(shù) ③零 三、“~”操作符 1.簡(jiǎn)介 2.用法舉例 ①正整數(shù) ②負(fù)整數(shù) ③零 本文在簡(jiǎn)單介紹原碼反碼補(bǔ)碼的基礎(chǔ)上,介紹“~”操作符的用法。 ~:一種單目操作符,即對(duì)

    2024年02月10日
    瀏覽(21)
  • c語(yǔ)言操作符(下)

    c語(yǔ)言操作符(下)

    目錄 ?編輯 逗號(hào)表達(dá)式 下標(biāo)訪問(wèn)[] 函數(shù)調(diào)?()? sizeof 結(jié)構(gòu)成員訪問(wèn)操作符 結(jié)構(gòu)體 結(jié)構(gòu)體聲明 直接訪問(wèn)? .成員名 間接訪問(wèn)? ?結(jié)構(gòu)體指針-成員名 exp1, exp2, exp3, …expN 運(yùn)算規(guī)則 :從左向右依次執(zhí)?。整個(gè)表達(dá)式的結(jié)果是 最后?個(gè)表達(dá)式 的結(jié)果。 如圖c的值為逗號(hào)表達(dá)式中

    2024年02月19日
    瀏覽(14)
  • C語(yǔ)言---操作符詳解

    C語(yǔ)言---操作符詳解

    算術(shù)操作符 移位操作符 位操作符 賦值操作符 單目操作符 關(guān)系操作符 邏輯操作符 條件操作符 逗號(hào)操作符 下標(biāo)引用、函數(shù)調(diào)用和結(jié)構(gòu)成員。 移位操作符,移動(dòng)的是二進(jìn)制位。 警告:對(duì)于移位運(yùn)算符,不要移動(dòng)負(fù)位數(shù),這個(gè)是標(biāo)準(zhǔn)定義的。 3.1.1、原碼、反碼、補(bǔ)碼介紹 整數(shù)

    2024年02月07日
    瀏覽(52)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包