本文研究的主要問題時關(guān)于C和C++中的基本數(shù)據(jù)類型int、long、long long、float、double、char、string的大小及表示范圍,具體介紹如下。
成都創(chuàng)新互聯(lián)公司主營瓊山網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都App制作,瓊山h5小程序開發(fā)搭建,瓊山網(wǎng)站營銷推廣歡迎瓊山等地區(qū)企業(yè)咨詢一、基本類型的大小及范圍的總結(jié)(以下所講都是默認(rèn)在32位操作系統(tǒng)下):
字節(jié):byte;位:bit。
1.短整型short:所占內(nèi)存大?。?byte=16bit;
所能表示范圍:-32768~32767;(即-2^15~2^15-1)
2.整型int:所占內(nèi)存大小:4byte=32bit;
所能表示范圍:-2147483648~2147483647;(即-2^31~2^31-1)
unsigned: 所占內(nèi)存大?。?byte=32bit;
所能表示范圍:0~4294967295;(即0~2^32-1)
3.長整型long:所占內(nèi)存大?。?byte=32bit;
所能表示范圍:-2147483648~2147483647;(即-2^31~2^31-1)
unsigned long: 所占內(nèi)存大小:4byte=32bit;
所能表示范圍:0~4294967295;(即0~2^32-1)
注:上面所說的全部是有符號型的,short,int,long都默認(rèn)為有符號型,其中l(wèi)ong和int都占4個字節(jié)的空間大小,他們有什么區(qū)別呢?
16位操作系統(tǒng):long:4字節(jié),int:2字節(jié)
32位操作系統(tǒng):long:4字節(jié),int:4字節(jié)
64位操作系統(tǒng):long:8字節(jié),int:4字節(jié)
int型在不同位數(shù)操作系統(tǒng)中所占用的字節(jié)數(shù)不同,如果想編寫可移植性好的程序,早年流行16位和32位操作系統(tǒng)時最好用long修飾int型,現(xiàn)在流行32位和64位操作系統(tǒng),用int就挺多了。當(dāng)然這些都看你怎么去理解它了,畢竟它們在不 同操作系統(tǒng)所占字節(jié)數(shù)不固定,所以各自都有其適用之處,不可定論其好壞。
下面是對它們的有科學(xué)依據(jù)的規(guī)定:
C語言規(guī)定:無論什么平臺都要保證long型占用字節(jié)數(shù)不小于int型, int型不小于short型。
4.字符型char:所占內(nèi)存大?。?byte=8bit;
所能表示范圍:不確定?。。。?;
unsigned char:所占內(nèi)存大小:1byte=8bit;
所能表示范圍:0~255;(0~2^8-1)
singned char: 所占內(nèi)存大?。?byte=8bit;
所能表示范圍:-128~127;(-2^7~2^7-1)
char的默認(rèn)類型不確定有可能是unsigned,也有可能是signed,主要更具編譯器而定,可以自己測試一下編譯器的默認(rèn)char的符號類型。
5.布爾類型bool:所占內(nèi)存大?。?byte=8bit;
所能表示的范圍:只能取兩個值false或者true;所以最小值就是:0, 大值:1.
6.單精度float: 所占內(nèi)存大?。?byte=32bit;
所能表示的范圍:(1.17549e-038)~(3.40282e+038);//注意:浮點數(shù)在內(nèi)存中都是按科學(xué)計數(shù)法來存儲的,浮點數(shù)的精度是由尾數(shù)的位數(shù)決定 的,大家記住即可不 必深究;
7.雙精度double:所占內(nèi)存大?。?byte=32bit;
所能表示的范圍:(2.22507e-308)~(1.79769e+308);
注:如何區(qū)分和使用這兩個浮點類型呢,首先float和double的精度不同,float保留到小數(shù)點后面7位,而double保留到小數(shù)點后面16位,float能保證6位有效數(shù)字,而double能保證15位有效數(shù)字,如果在不追求精度的的情況下當(dāng)然用 float比較好,節(jié)省內(nèi)存,如果需要很高的精度的情況下,最好還是用double,平時我們定義浮點型變量一般都用double,畢竟精度高,一般精度的損失是不能忽略的。
8.字符串string:由于string在c++中屬于類類型,不是基本數(shù)據(jù)類型,類不能計算其在內(nèi)存中所占大小,非要用sizeof(string)來算的話,一般算出來的結(jié)果是 sizeof(string)=4byte, 如果string字符串內(nèi)容很多,很明顯就不是其真實大小,string類里面有計算其字節(jié)大小的函數(shù)如:size(),length()。
總結(jié)
以上就是本文關(guān)于C和C++中的基本數(shù)據(jù)類型的大小及表示范圍詳解的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站muchs.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)站名稱:C和C++中的基本數(shù)據(jù)類型的大小及表示范圍詳解-創(chuàng)新互聯(lián)
轉(zhuǎn)載來源:http://muchs.cn/article42/phsec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、網(wǎng)站設(shè)計、網(wǎng)站收錄、商城網(wǎng)站、域名注冊、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容