最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++中的整型

 更新時間:2021年11月03日 10:44:57   作者:Coder_LT  
這篇文章我們來聊聊C++中的整型,整型即整數(shù),與小數(shù)對應(yīng)。許多語言只能表示一種整型(如Python),而在C++當(dāng)中根據(jù)整數(shù)的范圍提供了好幾種不同的整型,下面文章我們就來看看具體是哪幾種,需要的朋友也可以參考一下

1、整型

整型即整數(shù),與小數(shù)對應(yīng)。

許多語言只能表示一種整型(如Python),而在C++當(dāng)中根據(jù)整數(shù)的范圍提供了好幾種不同的整型。

C++的基本整型有charshort、int、long,在C++ 11標(biāo)準(zhǔn)中,新增了long long。在部分編譯器當(dāng)中不支持long long,而支持__int64。稍后會有單獨的文章對此進(jìn)行解釋和補(bǔ)充說明。

其中char類型有一些特殊屬性,通常被用來當(dāng)做字符而非整數(shù)。另外,每一種類型都有有符號版本和無符號版本兩種,所以總共一共有10種類型。

2、short、int、long和long long

這四種類型都是整型,唯一的不同是范圍的區(qū)別。受到底層硬件的影響,C++當(dāng)中這四種類型的范圍并不是固定的。由于要兼容各種不同類型的系統(tǒng)與硬件,所以沒有辦法對類型進(jìn)行統(tǒng)一。

為了避免引起不便,C++提供了一種靈活的標(biāo)準(zhǔn),它確保了每一種類型的最小范圍。

  • short至少16位
  • int至少與short一樣長
  • long至少32位,且至少與int一樣長
  • long long至少64位,且至少與long一樣長

3、位與字節(jié)

計算機(jī)內(nèi)存的基本單元是位,英文是bit,音譯成比特。一位bit只有0和1兩個值,可以將其看成是開關(guān)。8位bit一共有256中不同的組合,即。因此8位bit可以表示0-255或者-128-127。

每增加一個二進(jìn)制位,可以表示的范圍翻倍。因此16位可以表示65536個值,而32位可以表示4294672296個值,64位更大,大約能表示。這個范圍足夠表示銀河系中所有的星星。

8位二進(jìn)制位是一個字節(jié)(byte),字節(jié)是計算機(jī)存儲的最小計量單位。1024個字節(jié)稱為1KB,而1024個KB又被稱為1MB,1024MB為1GB。

一般在操作系統(tǒng)當(dāng)中,都有最小長度,這通常是由CPU的位數(shù)所決定的。在常用的操作系統(tǒng)當(dāng)中如LinuxWindows、MacOS,int和long為32位,short為16位,而long long為64位。

除了根據(jù)通常情況來推測之外,C++當(dāng)中也提供了一些現(xiàn)成的工具來查看。比如sizeof函數(shù),sizeof函數(shù)可以查看變量占據(jù)的字節(jié)數(shù)。這個函數(shù)既可以接受變量類型也可以接受變量本身,如果傳入的是變量類型,那么計算的結(jié)果就是該類型的變量占據(jù)的內(nèi)存大小,同理如果是變量本身,則表示變量本身占據(jù)的內(nèi)存。

需要注意的是,當(dāng)我們查看對象是變量類型時,需要使用括號,如果是變量本身,則括號是可選的。

cout << sizeof(int) << endl;
int a = 3;
cout << sizeof a << endl;

上述兩個cout的輸出結(jié)果都是4。

除了sizeof函數(shù)之外,C++還提供了大量的常量。比如INT_MAXLONG_MAX等,顧名思義這些常量的值就是各個類型的最大值。C++ primer當(dāng)中說這些常量存儲在頭文件climits當(dāng)中,但我嘗試了一下,發(fā)現(xiàn)沒有引入這個頭文件也一樣能夠訪問,所以可能已經(jīng)成為內(nèi)置變量了。

有最大值,也一樣有最小值,如INT_MINLONG_MIN等。我個人感覺這塊使用頻率不高,就不過多贅述了,有需要去翻閱一下primer即可。

4、初始化

我們之前在介紹變量的時候只是介紹了聲明變量的方式,類似于:

int a, b;


但其實我們可以把變量的聲明語句與賦值語句結(jié)合在一起,在聲明的同時進(jìn)行初始化。例如:

int a = 3;
char c = 'c';


當(dāng)然這個只是最基礎(chǔ)的初始化方式,尤其是后續(xù)涉及到面向?qū)ο髸r還有更多的使用細(xì)節(jié)。

5、無符號類型

前文當(dāng)中在介紹位和字節(jié)的時候曾經(jīng)提到過,比如8位二進(jìn)制位既可以表示0-255也可以表示-128-127。這其實就是有符號和無符號的區(qū)別。

如果我們確定我們要存儲的整數(shù)為非負(fù)數(shù),并且想要擁有更大的范圍,就可以使用無符號修飾符unsigned來修飾這幾種類型。

比如:

unsigned short ushort;
unsigned int uint;
unsigned long ulong;
unsigned long long ull;


其中unsigned int可以簡寫成unsigned,其他的用法和有符號的整數(shù)是一樣的。

到此這篇關(guān)于C++中的整型的文章就介紹到這了,更多相關(guān)C++整型內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

注:文章轉(zhuǎn)自微信眾號:Coder梁(ID:Coder_LT)

相關(guān)文章

  • C++學(xué)習(xí)小結(jié)之語句

    C++學(xué)習(xí)小結(jié)之語句

    本文給大家匯總介紹了下C++中比較基礎(chǔ)的知識--語句,常用的語句都有詳細(xì)介紹和附上了相關(guān)示例,十分實用,有需要的小伙伴可以參考下
    2015-07-07
  • c++編譯使用log4cplus的詳細(xì)步驟

    c++編譯使用log4cplus的詳細(xì)步驟

    C++很強(qiáng)大,但是仍然有很多不盡如人意的地方,比如打印日志方面就沒有java的log4j那種信手拈來,自然而然地東西,今天我們說一說一個很強(qiáng)大地日志庫log4cplus在c++項目中地使用,感興趣的朋友一起看看吧
    2023-10-10
  • C++關(guān)鍵字volatile學(xué)習(xí)筆記

    C++關(guān)鍵字volatile學(xué)習(xí)筆記

    這篇文章主要為大家介紹了C++關(guān)鍵字volatile學(xué)習(xí)筆記,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • Opencv實現(xiàn)畫筆功能

    Opencv實現(xiàn)畫筆功能

    這篇文章主要為大家詳細(xì)介紹了Opencv實現(xiàn)畫筆功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • C語言中scanf函數(shù)與空格回車的用法說明

    C語言中scanf函數(shù)與空格回車的用法說明

    這篇文章主要介紹了C語言中scanf函數(shù)與空格回車的用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • C語言實現(xiàn)手寫JSON解析的方法詳解

    C語言實現(xiàn)手寫JSON解析的方法詳解

    JSON(JavaScript?Object?Notation)是一種輕量級的數(shù)據(jù)交換格式,用來傳輸屬性值或者序列性的值組成的數(shù)據(jù)對象。本文將利用C語言實現(xiàn)手寫JSON解析,感興趣的可以了解一下
    2022-09-09
  • 解析c語言中"函數(shù)調(diào)用中缺少哨兵"的情況分析

    解析c語言中"函數(shù)調(diào)用中缺少哨兵"的情況分析

    本篇文章是對c語言中"函數(shù)調(diào)用中缺少哨兵"的情況進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • vsCode配置import@路徑提示的實現(xiàn)步驟

    vsCode配置import@路徑提示的實現(xiàn)步驟

    在導(dǎo)入文件設(shè)置路徑的時候方便了很多,本文主要介紹了vsCode配置import@路徑提示的實現(xiàn)步驟,具有一定的參考價值,感興趣的可以了解一下
    2023-08-08
  • C++之openFrameworks框架介紹

    C++之openFrameworks框架介紹

    本章我們將介紹一個非常好用的跨平臺的 C++開源框架 openFrameworks。它是一個開源的跨平臺的C++工具包,方便開發(fā)者創(chuàng)建出一個更簡單和直觀的框架,擅長開發(fā)圖像和動畫,感興趣的同學(xué)可以參考一下
    2023-05-05
  • 詳解C++ 引用

    詳解C++ 引用

    這篇文章主要介紹了C++ 引用的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07

最新評論

太原市| 尉氏县| 海门市| 洪洞县| 美姑县| 叙永县| 白银市| 华亭县| 南乐县| 新乡县| 呼玛县| 阳朔县| 砚山县| 娱乐| 梅河口市| 玉林市| 斗六市| 买车| 星座| 哈密市| 临夏市| 昆明市| 龙门县| 孙吴县| 班戈县| 清新县| 山阴县| 项城市| 克什克腾旗| 通州市| 汝城县| 宜兴市| 都江堰市| 汤阴县| 大埔区| 福贡县| 湖北省| 逊克县| 淮滨县| 两当县| 柯坪县|