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

C語言修煉之路數(shù)據(jù)類型悟正法?解析存儲定風魔上篇

 更新時間:2022年02月26日 16:57:40   作者:玄澈_  
使用編程語言進行編程時,需要用到各種變量來存儲各種信息。變量保留的是它所存儲的值的內(nèi)存位置。這意味著,當您創(chuàng)建一個變量時,就會在內(nèi)存中保留一些空間。您可能需要存儲各種數(shù)據(jù)類型的信息,操作系統(tǒng)會根據(jù)變量的數(shù)據(jù)類型,來分配內(nèi)存和決定在保留內(nèi)存中存儲什么

(壹) 數(shù)據(jù)類型介紹

前面我們已經(jīng)學習了基本的內(nèi)置類型,以及他們所占存儲空間的大小。:

類型的意義: 

  • 使用這個類型開辟內(nèi)存空間的大?。ù笮Q定了使用范圍)。
  • 如何看待內(nèi)存空間的視角。

1.1  類型的基本歸類

整形家族:

浮點數(shù)家族:

 構造類型:

 指針類型

空類型: 

(貳)整形在內(nèi)存中的存儲

我們之前講過一個變量的創(chuàng)建是要在內(nèi)存中開辟空間的。

空間的大小是根據(jù)不同的類型而決定的。

那接下來我們談談數(shù)據(jù)在所開辟內(nèi)存中到底是如何存儲的?

比如:

我們知道為a分配四個字節(jié)的空間。 那如何存儲? 

2.1  原碼、反碼、補碼

計算機中的有符號數(shù)(整數(shù))有三種表示方法,即原碼、反碼和補碼。

三種表示方法均有符號位和數(shù)值位兩部分,符號位都是用0表示“正”,用1表示“負”,而數(shù)值位三種表示方法各不相同。

2.2  深入解析

正數(shù)的原、反、補碼都相同。

對于整形來說:數(shù)據(jù)存放內(nèi)存中其實存放的是補碼。 

為什么呢?

舉例解析1:

舉例解析2

了解一下計算機的底層概念,我們?nèi)四X可以很輕松的知道機器數(shù)的第一位是符號位,但對于計算機基礎電路設計來說判別第一位是符號位是非常難和復雜的事情,為了讓計算機底層設計更加簡單,人們開始探索將符號位參與運算,并且采用只保留加法的方法,我們知道減去一個數(shù),等于加上這個數(shù)的負數(shù),即:1-1 = 1 + (-1) = 0,這樣讓計算機運算就更加簡單了,并且也讓符號位參與到運算中去。

因為補碼能多存儲一個-128,而且在計算機底層中存儲的是補碼,所以在計算機中一個8位的二進制數(shù)的存儲范圍是用補碼表示的[-128,127],而不是用原碼或反碼表示的[-127,127]。這也可以解釋為什么計算機中一個字節(jié)的取值范圍是[-128,127]。

這樣也能夠回答我們開始提出的問題了,原碼、反碼、補碼的使用,是人們?yōu)榱俗尫栁荒軈⑴c運算并讓計算機底層運算更加簡單而設計出來的數(shù)據(jù)存儲表示方式。

到此這篇關于C語言修煉之路數(shù)據(jù)類型悟正法 解析存儲定風魔上篇的文章就介紹到這了,更多相關C語言 數(shù)據(jù)類型內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • C++ 十進制轉換為二進制的實例代碼

    C++ 十進制轉換為二進制的實例代碼

    這篇文章介紹了C++ 十進制轉換為二進制的實例代碼,有需要的朋友可以參考一下
    2013-10-10
  • C++中使用vector存儲并遍歷數(shù)據(jù)的基本步驟

    C++中使用vector存儲并遍歷數(shù)據(jù)的基本步驟

    C++標準模板庫(STL)提供了多種容器類型,包括順序容器、關聯(lián)容器、無序關聯(lián)容器和容器適配器,每種容器都有其特定的用途和特性,這篇文章主要介紹了C++中使用vector存儲并遍歷數(shù)據(jù)的基本步驟,需要的朋友可以參考下
    2025-01-01
  • 用C語言實現(xiàn)掃雷小程序

    用C語言實現(xiàn)掃雷小程序

    這篇文章主要為大家詳細介紹了用C語言實現(xiàn)掃雷小程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • Linux編程實現(xiàn)制作文件的ed2k鏈

    Linux編程實現(xiàn)制作文件的ed2k鏈

    這篇文章主要介紹了Linux編程實現(xiàn)制作文件的ed2k鏈的相關資料,需要的朋友可以參考下
    2015-03-03
  • Trae+Qt+MSVC環(huán)境配置的實現(xiàn)示例

    Trae+Qt+MSVC環(huán)境配置的實現(xiàn)示例

    本文主要介紹了Trae+Qt+MSVC環(huán)境配置,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-03-03
  • STL各個容器性能詳細比較

    STL各個容器性能詳細比較

    從下面表中的數(shù)據(jù)來看寫入用時vector和deque很快,因為他們內(nèi)存分配次數(shù)少,關聯(lián)容器和list都是一個一個分配的,一個一個分配也會造成內(nèi)存碎片,內(nèi)存利用率低
    2013-09-09
  • C語言中實現(xiàn)自定義數(shù)據(jù)類型的輸入輸出的方法和技巧

    C語言中實現(xiàn)自定義數(shù)據(jù)類型的輸入輸出的方法和技巧

    在 C 語言中,除了基本的數(shù)據(jù)類型(如整型、浮點型、字符型等),我們還經(jīng)常需要自定義數(shù)據(jù)類型來滿足特定的編程需求,所以本文給大家介紹了C語言中實現(xiàn)自定義數(shù)據(jù)類型的輸入輸出的方法和技巧,需要的朋友可以參考下
    2024-07-07
  • 基于malloc與free函數(shù)的實現(xiàn)代碼及分析

    基于malloc與free函數(shù)的實現(xiàn)代碼及分析

    本篇文章介紹了malloc與free函數(shù)的實現(xiàn)代碼及分析。需要的朋友參考下
    2013-05-05
  • C++中set的用法學習

    C++中set的用法學習

    Set是C++?STL(標準模板庫)的一個容器類,它用于存儲不同的值,并且可以按照特定順序進行訪問和操作。本文就來通過一些示例和大家簡單講講set的用法吧
    2023-05-05
  • 用typedef定義類型的總結分析

    用typedef定義類型的總結分析

    除了可以直接使用C提供的標準類型名(如:int ,char ,float,double,long等)和自己聲明的結構體、共用體、枚舉類型外,還可以使用typedef聲明 新的類型名 來代替 已有的 類型名
    2013-08-08

最新評論

休宁县| 江阴市| 成武县| 台湾省| 文安县| 孝义市| 石泉县| 澄江县| 城口县| 济宁市| 日照市| 军事| 四川省| 遂昌县| 静宁县| 庆云县| 临汾市| 永寿县| 娄底市| 南涧| 饶平县| 馆陶县| 江阴市| 宜都市| 曲水县| 阜宁县| 铜鼓县| 会东县| 雅安市| 慈利县| 莱阳市| 新乡市| 满洲里市| 南雄市| 怀化市| 林州市| 砀山县| 恭城| 阿合奇县| 出国| 云浮市|