當前位置:首頁 » 編程語言 » c語言中的或運算

c語言中的或運算

發布時間: 2022-12-17 22:02:31

『壹』 c語言的」或「符號

分別是
&&和||
c語言中提供了三種邏輯運算符:
&&(與運算)
||(或運算)
!(非運算)
與運算符(&&)和或運算符(||)均為雙目運算符。具有左結合性。非運算符(!)為單目運算符,具有右結合性。邏輯運算符和其它運算符優先順序的關系可表示如下:

「&&」和「||」低於關系運算符,「!」高於算術運算符。

『貳』 c語言中同或、異或怎麼表示

1、概念:參加運算的兩個對象,按二進制位進行「與」運算,負數按補碼形式參加按位與運算。

2、運算規則:0&0=0; 0&1=0;1&0=0;1&1=1;即:兩位同時為「1」,結果才為「1」,否則為0【有0則0】

例如:3&5=1,即0000 0011 & 0000 0101 = 0000 0001

3、「與運算」特殊用途:

(1)清零。如果想將一個單元清零,即使其全部二進制位為0,只要與一個各位都為零的數值相與,結果為零。

(2)取一個數中指定位。找一個數,對應X要取的位,該數的對應位為1,其餘位為零,此數與X進行「與運算」可以得到X中的指定位。

例:設X=10101110,取X的低4位,用 X & 0000 1111 = 0000 1110 即可得到;還可用來取X的2、4、6位。

二、按位或(|)

1、概念:參加運算的兩個對象按二進制位進行「或」運算,負數按補碼形式參加按位與運算。

2、運算規則:0|0=0;0|1=1;1|0=1;1|1=1;即 :參加運算的兩個對象只要有一個為1,其值為1【有1則1】

例如:3|5=7,即 0000 0011 | 0000 0101 = 0000 0111

3、「或運算」特殊作用:

(1)常用來對一個數據的某些位置1。找到一個數,對應X要置1的位,該數的對應位為1,其餘位為零。此數與X相或可使X中的某些位置1。

例:將X=10100000的低4位置1 ,用 X | 0000 1111 = 1010 1111即可得到。

三、異或運算(^)

1、概念:參加運算的兩個數據,按二進制位進行「異或」運算

2、運算規則:0^0=0;0^1=1;1^0=1;1^1=0;即:參加運算的兩個對象,如果兩個相應位為「異」(值不同),則該位結果為1,否則為0【同0異1】

例如:3^5=6,即0000 0011^0000 0101 = 0000 0110

3、「異或運算」特殊作用:

(1)使特定位翻轉 找一個數,對應X要翻轉的各位,該數的對應位為1,其餘位為零,此數與X對應位異或即可。

(2)與0相異或,保留原值 ,X ^ 0000 0000 = 1010 1110。

例:X=10101110,使X低4位翻轉,用X ^ 0000 1111 = 1010 0001即可得到。

(3)基於異或運算,不引用新變數交換兩個變數的值

a = a ^ b; b = a ^ b; a = a ^ b;

【同樣基於加減法的話有:a = a + b; b = a - b; a = a -b;】

四、不同長度的數據進行位運算

如果兩個不同長度的數據進行位運算時,系統會將二者按右端對齊,然後進行位運算。

以「與」運算為例說明如下:我們知道在C語言中long型佔4個位元組,int型佔2個位元組,如果一個long型數據與一個int型數據進行「與」運算,右端對齊後,左邊不足的位依下面三種情況補足,

(1)如果整型數據為正數,左邊補16個0。

(2)如果整型數據為負數,左邊補16個1。

(3)如果整形數據為無符號數,左邊也補16個0。

如:long a=123;int b=1;計算a & b。

如:long a=123;int b=-1;計算a & b。

如:long a=123;unsigned int b=1;計算a & b。

『叄』 C語言中「或者」是怎麼表示的

C語言中「或者」的表示很簡單,就是「||」,「與」是「&&」。

『肆』 C語言中"或者"是怎麼表示的

「||」

其它常用運算符:

1、移位運算符

<< 左移運算符;>> 右移運算符。

2、關系運算符

<、<=、>、>=關系運算符。

3、相等運算符

「 == 」等於運算符;「 != 」不等於運算符。

4、位與運算符

「 & 」按位與運算符

5、位異或運算符

「 ∧ 」按位異或運算符(Bitwise exclusive OR operator)。

6、邏輯與運算符

「&&」邏輯與運算符。

(4)c語言中的或運算擴展閱讀

運算符的特性——

1、優先順序:

C語言中,運算符的運算優先順序共分為15 級。1 級最高,15 級最低。 在表達式中,優先順序較高的先於優先順序較低的進行運算。而在一個運算量兩側的運算符 優先順序相同時,則按運算符的結合性所規定的結合方向處理。

2、結合性:

C語言中各運算符的結合性分為兩種,即左結合性(自左至右)和右結合性(自右至左)。例如算術運算符的結合性是自左至右,即先左後右。如有表達式x-y+z 則y 應先與「-」號結合,執行x-y 運算,然後再執行+z 的運算。

『伍』 c語言中表示或者的符號「||」在電腦上怎麼打出來

同時按住【shift】鍵和【】鍵,按兩下就好。【】鍵在鍵盤右邊enter鍵上方,如下圖,上面也標有「|」符號。

C語言中其名稱為邏輯「或」,與其並列的邏輯運算符還有:邏輯「與」運算符(&&)、邏輯「非」運算符(!)。

(5)c語言中的或運算擴展閱讀:

「||」符號的應用:

1、邏輯或運算符,形式:(布爾值)||(布爾值)or

例子:x=6,y=3

條件:(x==6 || y==3)

returns true;

兩個布爾值中任何一個值為TRUE(或者兩個都為TRUE),則返回值為TRUE。如果兩個運算符都是FALSE,則返回值為FALSE。

2、字元串連接符,PLSQL中用來連接兩個字元串。如'abc'||'def'的運算結果是'abcdef'。

3、面對if((a=2)||(b=1)) c=2的情況,由於a=2始終為真,所以程序不再計算b=1的情況。此時,這條語句中的a=2和c=2為有效,b依然是程序開始定義的值,a的值為true,再如:

int a=3 ,b = 5;

if((a=2)||(b=1)){a++,b++}

輸出結果為,a=3,b=6。

由於a=2始終為真,a=2+1,所以程序不再計算b=1的情況,b按原來定義的值計算:b=5+1。

『陸』 C語言邏輯或與非的用法

C語言邏輯或與非用於邏輯運算,可以在一條語句中同時出現,但還有優先順序的限制。

基本應用:

邏輯與,符號為「&&」,只有兩個操作數都是真,結果才是真。邏輯或,是邏輯運算符,符號是「||」。表示當兩個條件中有任一個條件滿足,「邏輯或」的運算結果就為「真」。「!」(邏輯非)邏輯運算符。「邏輯非」就是指本來值的反值。

優先順序:

C語言中,運算符的運算優先順序共分為15 級。1 級最高,15 級最低。邏輯與運算符 13級「&&」邏輯與運算符。邏輯或運算符 14 級,「 || 」邏輯或運算符。邏輯否「!」單目/一元運算 3級。因此優先順序為:邏輯非高於邏輯與高於邏輯非。

運算方向:

在C語言中,只有4個運算符規定了運算方向,它們是&&、| |、條件運算符及賦值運算符。&&、| |都是先計算左邊表達式的值,當左邊表達式的值能確定整個表達式的值時,就不再計算右邊表達式的值。如 a = 0 && b; &&運算符的左邊位0,則右邊表達式b就不再判斷。

(6)c語言中的或運算擴展閱讀:

相關規則及應用:

1、邏輯運算符:a=1,b=1;a||b-1;因為a=1為真值,所以不管b-1是不是真值,總的表達式一定為真值,這時後面的表達式就不會再計算了。

2、短路原則:

在邏輯表達式的求解過程中,任何時候只要邏輯表達式的值已經可以確定,則求解過程不再進行,求解結束。表達式中優先順序最低的邏輯運算符,以這些運算符為准將整個邏輯表達式分為幾個計算部分。最左邊一個計算部分開始,按照算術運算、關系運算和邏輯運算的規則計算該部分的值。

每計算完一個部分就與該部分右邊緊靠著的邏輯運算符根據真值表進行邏輯值判斷。如果已經能夠判斷出整個邏輯表達式的值則停止其後的所有計算;只有當整個邏輯表達式的值還不能確定的情況下才進行下一個計算部分的計算。

『柒』 C語言中按位或,與,非是怎麼用的,怎麼運算

位運算符
C提供了六種位運算運算符;這些運算符可能只允許整型操作數,即char、short、int和long,無論signed或者unsigned。
&
按位AND
|
按位OR
^
按位異或
<<
左移
>>
右移
~
求反(一元運算)
按位與操作&通常用於掩去某些位,比如
n
=
n
&
0177;
使得n中除了低7位的各位為0。
按位或操作|用於打開某些位:
x
=
x
|
SET_ON;
使得x的某些SET_ON與相對的位變為1。
按位異或操作^使得當兩個操作數的某位不一樣時置該位為1,相同時置0。
應該區分位操作符&、|與邏輯操作符&&、||,後者從左到右的評價一個真值。比如,如果x為1、y為2,那麼x
&
y為0,而x
&&
y為1。
移位運算符<<和>>將左側的操作數左移或者右移右操作數給定的數目,右操作數必須非負。因此x
<<
2將x的值向左移動兩位,用0填充空位;這相當於乘4。右移一個無符號數會用0進行填充。右移一個帶符號數在某些機器上會用符號位進行填充(「算數移位」)而在其他機器上會用0進行填充(「邏輯移位」)。
單目運算符~對一個整數求反;即將每一個1的位變為0,或者相反。比如
x
=
x
&
~077
將x的後六位置0。注意x
&
~077的值取決於字長,因此比如如果假設x是16位數那麼就是x
&
0177700。這種簡易型式並不會造成額外開銷,因為~077是一個常數表達式,可以在編譯階段被計算。
作為一個使用位操作的實例,考慮函數getbits(x,p,n)。它返回以p位置開始的n位x值。我們假設0位在最右邊,n和p是正數。例如,getbits(x,4,3)返回右面的4、3、2位。
/*
getbits:
返回從位置p開始的n位
*/
unsigned
getbits(unsigned
x,
int
p,
int
n)
{
return
(x
>>
(p+1-n))
&
~(~0
<<
n);
}
表達式x
>>
(p+1-n)將需要的域移動到字的右側。~0是全1;將其左移n為並在最右側填入0;用~使得最右側n個1成為掩碼。

『捌』 C語言中的邏輯或運算符怎麼打出來

C語言中的邏輯或運算符可以按住shift鍵,接著按兩下enter上面的鍵就能打出來,接下來具體的演示一下:

1、按住shift鍵不鬆手,接著按兩下Enter上面的鍵,如下圖所示

『玖』 C語言或運算

或運算是在二進制級別的運算,1|1
=
0|1
=
1|0
=
1,0|0
=
0
10的二進制是0000
1010
4
的二進制是0000
0100
他兩個或運算得到的結果是0000
1110,其
十進制
即是14

『拾』 c語言符號且與或

C語言中的邏輯運算符:&&(與運算)、||(或運算)、!(非運算)。

與運算符(&&)和或運算符(||)均為雙目運算符。具有左結合性。非運算符(!)為單目運算符,具有右結合性。邏輯運算符和其它運算符優先順序的關系可表示如下:

本來沒有錯誤,關系運算符都是按「非與或」順序來運算的。但是,不同的編譯器設計者可能對這個的認識不同,因此,如果不加括弧就會有歧義,因此,編譯器就會提醒應該加括弧(編譯中有警告:waring),但你不加,也不算錯,只是其結果就是按編譯器的運算順序來操作了。

&&是與,||是或;

&是位與,|是位或;

|就是按住shift在按回車上面一個按鈕;

兩下就是||;

這個不是錯誤,是警告warning,編譯器怕記不住操作符優先順序,而導致錯誤,因此提示||的優先順序高於!=。

(10)c語言中的或運算擴展閱讀

C語言內置了豐富的運算符,大體可分為10類:算術運算符、關系運算符、邏輯運算符、位操作運算符、賦值運算符、條件運算符、逗號運算符、指針運算符、求位元組數運算符和特殊運算符。

根據運算符可操作的操作數的個數,可把運算符分為一元運算符、二元運算符和多元運算符(一般三元)。優先順序:當不同運算符優先順序不同時,先計算誰後計算結合性:當不同運算符優先順序相同時,先計算誰後計算誰。

熱點內容
什麼游戲開伺服器便宜 發布:2024-05-20 14:21:48 瀏覽:656
萬網資料庫清空 發布:2024-05-20 14:20:46 瀏覽:557
編譯原理什麼是規范句型 發布:2024-05-20 14:08:59 瀏覽:562
jenkins自動化測試腳本 發布:2024-05-20 13:28:03 瀏覽:918
網游機戰腳本 發布:2024-05-20 13:26:56 瀏覽:482
天天愛消除卡心腳本 發布:2024-05-20 13:01:00 瀏覽:124
python中str的意思 發布:2024-05-20 13:00:52 瀏覽:235
隨機訪問方式 發布:2024-05-20 12:42:52 瀏覽:258
php判斷登陸 發布:2024-05-20 12:14:24 瀏覽:629
腳本精靈並且 發布:2024-05-20 11:39:40 瀏覽:266