位運算:(需轉換為二進位制)
左移:<<、右移:
>>
、按位與:
&、按位或:
|、按位取反:
~、按位異:
^1<<16意為:
16的二進位制表示形式
0b10000
向左移一位,相當於十進位制的
16/2.
16>>1意為:
16的二進位制表示形式
0b10000
向右移一位,相當於十進位制的
16*2.
16&15意為:
16的二進位制表示形式
0b10000與15
的二進位制表示形式
0b1111
,如果同位數的值相同為
1,不同為
0,結果為
016|15意為:
16的二進位制表示形式
0b10000與15
的二進位制表示形式
0b1111
,同位數只要有乙個是
1,那麼該位就是
1,同位數都是
0,那麼就是
0,結果為
0b11111即31
~16意為:
16的二進位制表示形式
0b0000 0000 0000 0000 0000 0000 0001 0000
,每位都取反,結果為
0b1111 1111 1111 1111 1111 1111 1110 1111
即-17
16^15意為:
16的二進位制表示形式
0b10000與15
的二進位制表示形式
0b1111
,同位數相同為
0,不同為
1,結果為
0b11111即31
16^31:
16的二進位制表示形式
0b10000與31
的二進位制表示形式
0b11111
,結果為
0b1111即15
,發現16^15^16 = 15
其它運算子:
1.
sizeof:用來表示所佔位元組數。
sizeof使用注意:
sizeof(int)是允許的,但是
sizeof int
為錯誤寫法
。2.
scanf
時、指標等
。資料的隱式轉換和顯式轉換,型別轉換最好是由低到高
。3.
++a與
a++在運算時的區別
:區別在參與運算時,
++a會把自加後的值參與運算;
a++則不會
4.
邏輯運算的 && 當前面乙個條件不滿足時,後面的不會執行;
|| 第乙個條件滿足後,後面的條件也不會執行5、c
語言中」真「
、」假「
是用」1「
、」0「
表示。6、邏輯運算和位運算的區別:邏輯運算是對條件的判斷;位運算是把十進位制轉換為二進位制然後對資料進行操作。
進製:進製常用的有十進位制、二進位制、八進位制、十六進製制等。十進位制的數字表示為0~
9;二進位制數字表示為0、
1;八進位制數字表示為0~
7;十六進製制表示為0~
9,a~
f 。c語言中各進製表示如:
int a = 6 ; //預設定義是十進位制
int b = 0b1101 ; //二進位制以0b或
0b開頭
int c = 07 ; //八進位制以0開頭
int d = 0x 16e ; //十六進製制以0x或
0x開頭
其中以十進位制和二進位制應用頻率最高。
十進位制轉二進位制:
1、正整數十進位制轉二進位制:
將需要轉換的正整數一直除2取餘,知道為0或
1,右下到上將餘數排列即可求出這個正整數的二進位制表示。計算機中
int 有32
位,其中首位
0代表正整數,
1代表負數。例:
15的二進位制表示為
0000 0000 0000 0000 0000 0000 0000 1111
2、負數十進位制轉二進位制;
1>原碼:負數取絕對值用二進位制表示。
例:-17取絕對值
17,表示為
0000 0000 0000 0000 0000 0000 0001 0001
2>反碼:得到絕對值二進位製取反,例:
17取反為
1111 1111 1111 1111 1111 1111 1110 1110
3>補碼:取反數值補
1,例:
-17最後得到結果
1111 1111 1111 1111 1111 1111 1110 1111
二進位制轉十進位制:
從右向左用二進位制的每個數乘以2的對應次方。
例:11101二進位制轉十進位制
1*2^0+0*2^1+1*2^2+1*2^3+1*2^4=29
C語言中的位運算
0 推薦 在電腦程式中,資料的位是可以操作的最小資料單位,理論上可以用 位運算 來完成所有的運算和操作。一般的位操作是用來控制硬體的,或者做資料變換使用,但是,靈活的位操作可以有效地提高程式執行的效率。c語言提供了位運算的功能,這使得c語言也能像組合語言一樣用來編寫系統程式。位運算子c語言提供了六種...
C語言中的位運算
c語言中的位運算有六個 按位與 按位或 按位異或 取反 左移 右移 除 以外其餘均為二元運算子,即要求運算子兩側均有乙個運算量 位運算量只能為整型或字元型,不能為實型資料。1.按位與 0 0 0 0 1 0 1 0 0 1 1 1 3 5 00000011 00000101 00000001 1 的...
C語言中的位運算
在電腦程式中,資料的位是可以操作的最小資料單位,理論上可以用 位運算 來完成所有的運算和操作。一般的位操作是用來控制硬體的,或者做資料變換使用,但是,靈活的位操作可以有效地提高程式執行的效率。c語言提供了位運算的功能,這使得c語言也能像組合語言一樣用來編寫系統程式。位運算子c語言提供了六種位運算子 ...