2 &&
&在c語言中表示按位與,格式如下:
int result = a&b;
所以a&b返回值為整數型別
按位與即將 & 兩側的數字轉換為2進製後逐位進行"與"比較(如果a,b所對應的二進位制位數不同,則在位數低者的最高位前補0直至位數相同——比如1100與10,那就要將10變為0010,此時值不發生變化),
與的所有比較結果如下(左右可互換):
&左側&右側
最終結果00
0010
1001
11逐位比較過後,將得出的結果按對應位置擺放,並將擺放後的結果轉換為10進製輸出。
#include
intmain()
12對應的二進位制為1100(a):5對應的二進位制為0101(b)
我們先列個**逐位分析:ab
結果100
1110
0001
0(從上到下就是從最高位到最低位)
那麼最終結果就是0100,再將其轉為十進位制(0100對應十進位制為4)賦值給result
所以最終列印的結果為
4
&&是乙個邏輯運算子,只有兩側的邏輯表示式同時為真,整個邏輯表示式才為真
&左側&右側
最終結果假假
假假真假
真假假真
真真(真,假也可以換做1,0)
補充:對於數字來說,0為假,其餘為真
#include
intmain()
**中四個if中&&左右兩側的邏輯表示式值與之前提到的**相對應,即:
&左側&右側
最終結果假假
假假真假
真假假真
真真顯然,最終輸出結果為
row4
const 在C語言和C 語言中的區別
const 在c語言和c 語言中的區別 1 c語言中的 const 是定義了乙個 const 變數,const 用來限定乙個變數是唯讀的,不具備寫的功能,即是不可變的 c 語言中的 const 則是定義了乙個常量 const int a 10 int arr a 在c語言中是錯誤的,因為在c語言中是...
在c語言中巨集和函式的區別
關於c語言中的巨集,自己來總結一下。簡單來說,巨集就是在c語言中簡單的文字替換,這是簡單的理解,嚴格的說不是很準確,因為在巨集中存在乙個文字條件編譯,所以有一定的判斷,巨集是在c語言中的預處理階段就已經處理完成。函式呢,就要分為兩種了。第一種封裝成庫。如果函式在動態庫中,那麼呼叫就是在函式執行階段 ...
strcpy 與strcat 在c語言中
strcpy 函式在c語言中的原型是 char strcpy char str1,str2 一下對其中的理解。1.此函式為返回值為指標型別的指標函式 返回前邊字串的位址 屬於指標函式的應用。2.在這裡注意辨析strcpy 與strcat 函式的區別 有無覆蓋 1 strcat是用來連線兩個字串的,原...