新聞中心
在C語言中,正負(fù)數(shù)的表示主要依賴于整數(shù)類型變量的有符號和無符號屬性。

創(chuàng)新互聯(lián)成立以來不斷整合自身及行業(yè)資源、不斷突破觀念以使企業(yè)策略得到完善和成熟,建立了一套“以技術(shù)為基點(diǎn),以客戶需求中心、市場為導(dǎo)向”的快速反應(yīng)體系。對公司的主營項(xiàng)目,如中高端企業(yè)網(wǎng)站企劃 / 設(shè)計(jì)、行業(yè) / 企業(yè)門戶設(shè)計(jì)推廣、行業(yè)門戶平臺運(yùn)營、app軟件開發(fā)公司、移動網(wǎng)站建設(shè)、微信網(wǎng)站制作、軟件開發(fā)、遂寧托管服務(wù)器等實(shí)行標(biāo)準(zhǔn)化操作,讓客戶可以直觀的預(yù)知到從創(chuàng)新互聯(lián)可以獲得的服務(wù)效果。
1. 有符號整數(shù)類型
有符號整數(shù)類型包括int, long, short, char等,這些類型的變量可以存儲正數(shù)、負(fù)數(shù)以及零。
1.1 正數(shù)
在有符號整數(shù)類型中,正數(shù)的表示方式與我們在數(shù)學(xué)中使用的十進(jìn)制表示方式相同,如果我們有一個int類型的變量a,我們可以將值5賦值給它:
int a = 5;
1.2 負(fù)數(shù)
負(fù)數(shù)在計(jì)算機(jī)中的表示方式是使用二進(jìn)制補(bǔ)碼,補(bǔ)碼是一種可以讓加法和減法操作統(tǒng)一的二進(jìn)制表示方法,對于一個n位的二進(jìn)制數(shù),其補(bǔ)碼是由原碼(即我們通常理解的二進(jìn)制表示)取反(0變?yōu)?,1變?yōu)?)后加1得到的。
5在8位二進(jìn)制中的表示為:
原碼:00000101(這是+5的原碼表示)
反碼:11111010(取反)
補(bǔ)碼:11111011(加1)
5在計(jì)算機(jī)中以補(bǔ)碼形式存儲。
2. 無符號整數(shù)類型
無符號整數(shù)類型包括unsigned int, unsigned long, unsigned short等,這些類型的變量只能存儲非負(fù)數(shù)(即正數(shù)和零)。
2.1 正數(shù)
無符號整數(shù)類型的正數(shù)表示方式與有符號整數(shù)類型的正數(shù)表示方式相同,只是它們不能表示負(fù)數(shù),如果我們有一個unsigned int類型的變量b,我們可以將值5賦值給它:
unsigned int b = 5;
2.2 負(fù)數(shù)
由于無符號整數(shù)類型不能存儲負(fù)數(shù),所以在試圖給一個無符號整數(shù)類型的變量賦一個負(fù)值時,會發(fā)生所謂的“下溢”現(xiàn)象,即該值會被轉(zhuǎn)換為一個非常大的正數(shù),這個轉(zhuǎn)換過程也是基于二進(jìn)制補(bǔ)碼的,但是結(jié)果被解釋為一個正數(shù)。
如果我們嘗試將5賦值給一個unsigned int類型的變量c:
unsigned int c = 5;
實(shí)際上,c的值將會是一個非常大的正數(shù),具體取決于系統(tǒng)的位數(shù),在32位系統(tǒng)中,c的值將會是4294967291(即2^32 5)。
文章名稱:c語言中正負(fù)怎么表示什么
本文鏈接:http://www.dlmjj.cn/article/cccgjcc.html


咨詢
建站咨詢
