新聞中心
C++編程語言在開發(fā)人員眼中不僅僅是C語言的升級(jí)版本。其在功能上的擴(kuò)展有更大的改進(jìn)。我們今天就可以通過對C++位操作的基本概念的解析來充分掌握這方面的知識(shí)。并進(jìn)一步加深對C++語言的了解程度。#t#

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供朝陽網(wǎng)站建設(shè)、朝陽做網(wǎng)站、朝陽網(wǎng)站設(shè)計(jì)、朝陽網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、朝陽企業(yè)網(wǎng)站模板建站服務(wù),10年朝陽做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
C++位操作包括兩種:傳統(tǒng)的C語言方式的位操作和C++中利用bitset容器的位操作
1.C++位操作基本操作:
使用一個(gè)unsigned int變量來作為位容器。
2.C++位操作操作符:
| 按位或操作符:result=exp1|exp2;當(dāng)exp1和exp2中對應(yīng)位中至少有一個(gè)為1時(shí),result中對應(yīng)位為1,否則為0。
& 按位與操作符::result=exp1&exp2;當(dāng)exp1和exp2中對應(yīng)位全為1時(shí),result中對應(yīng)位為1,否則為0。
^ 按位異或或操作符:result=exp1^exp2;當(dāng)exp1和exp2中對應(yīng)位不相同時(shí),result中對應(yīng)位為1,否則為0。
~ 反轉(zhuǎn)操作符:將位容器中的所有位都反轉(zhuǎn),1變?yōu)?,0變?yōu)?。
<< 按位左移操作符:exp< >> 按位右移操作符:exp>>n,將容器中所有的位向右移n位,空出的位用0填充。 |=,&=,^= 分別對應(yīng)|&^三種操作符的復(fù)合操作符。 3.C++位操作常用操作 這里我們假設(shè)有一個(gè)result的unsigned int變量用來儲(chǔ)存32個(gè)學(xué)生的成績(通過和不通過分別用0和1),這樣result就有33位(result從右至左,從0開始計(jì)算位數(shù),在這個(gè)例子中0位被浪費(fèi))。 (a) 將第27位設(shè)置為及格(設(shè)作1)其他位不變: result|=(1<<27) //任意的位值與1作按位或操作其值為1,而與0作按位與操作其值不變 (b) 將第27位設(shè)置成不及格(設(shè)為0)。 result&=~(1<<27) //任意的位值與0作按位與操作其值為0,而與1作按位與操作其值不變 (c) 反轉(zhuǎn)第27位的值。 result^=(1<<27) //任意的位值與1作按位異或操作其值為1,而與0作按位異與操作其值不變 以上就是對C++位操作的基本概念介紹。
網(wǎng)頁名稱:C++位操作基本含義詳解
網(wǎng)站地址:http://fisionsoft.com.cn/article/dpgepgi.html


咨詢
建站咨詢
