C語言位運算
有6種: &, | , ^(亦或), <<(左移), >>(右移)。
注意:參與位運算的元素必須是int型或者char型,以補碼形式出現(xiàn)。
按位與&
&運算常應(yīng)用于:
迅速清零
保留指定位
判斷奇偶性
a & 1 = 1;則a為奇數(shù)
b & 1 = 0;則a為偶數(shù)
按位或|
按位或(“|”)用途:設(shè)定數(shù)據(jù)的指定位
按位異或^
異或 就是位相同等于零,相異等于1
按位異或作用:
1.定位反轉(zhuǎn)
2.交換數(shù)值
//交換a和b的值
按位取反~
左移、右移
讓二進制左移N位,高位丟棄,低位補0,得到的 新值 = 原值*2^N,
作用:實現(xiàn)二倍乘除運算(右移幾位相當(dāng)于除于二的幾次方。左移幾位,相當(dāng)于乘上二的幾次方。)
問題:int是有符號類型,左移可能會把符號左移出去,發(fā)生溢出。
-
C語言
+關(guān)注
關(guān)注
180文章
7615瀏覽量
137872
原文標(biāo)題:C語言位運算+實例講解
文章出處:【微信號:weixin21ic,微信公眾號:21ic電子網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
AVR單片機C語言實例講解帶你輕松從入門到精通
【C語言知識免費視頻教程】位運算符2(第36集)
C語言實例解析精粹_曹衍龍
![<b class='flag-5'>C</b><b class='flag-5'>語言實例</b>解析精粹_曹衍龍](https://file.elecfans.com/web2/M00/49/3C/pYYBAGKhtECAQjjsAAAKoDWUc4w283.jpg)
C51語言的基礎(chǔ)知識點實例講解
![<b class='flag-5'>C</b>51<b class='flag-5'>語言</b>的基礎(chǔ)知識點<b class='flag-5'>實例</b><b class='flag-5'>講解</b>](https://file.elecfans.com/web1/M00/95/4F/pIYBAFz2FHiAV2UYAAQ5cm-5YCQ231.png)
評論