青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

franksunny的個人技術(shù)空間
獲得人生中的成功需要的專注與堅持不懈多過天才與機(jī)會。 ——C.W. Wendte

 

< 筆記一、數(shù)據(jù)類型 >

現(xiàn)在業(yè)界普遍認(rèn)可以下等式

程序 = 數(shù)據(jù)結(jié)構(gòu)   + 算法 + 文檔

這第一篇筆記就只對以上提到的數(shù)據(jù)結(jié)構(gòu)結(jié)合本人的理解展開做些總結(jié)。

 

類型

程序的輸入輸出的實體就是數(shù)據(jù)信息,而對這些數(shù)據(jù)信息給以歸類和組織,我們就稱為數(shù)據(jù)結(jié)構(gòu)。因此數(shù)據(jù)結(jié)構(gòu)就是對數(shù)據(jù)的組織形式,也可以說是對內(nèi)存的編碼規(guī)則。由于基于底層的數(shù)據(jù)都是二進(jìn)制的 0 1 序列,所以人們通常將 8 個連續(xù)的 0 1 序列看作一個獨(dú)立的結(jié)構(gòu)——字節(jié)( Byte ),字節(jié)中的每一個二進(jìn)制序列就是一個位( bit )。但是這種組織形式太過籠統(tǒng),為此 C 語言提供了四種基本類型(整型、浮點型、字符型、枚舉類型)、三種構(gòu)造類型(數(shù)組、結(jié)構(gòu)體、聯(lián)合體)、指針類型和空類型。 C++ 語言在以上 9 種類型基礎(chǔ)上又增加了一種基本類型—— bool 型和一種構(gòu)造類型——類類型( class )。

 

編碼規(guī)則

雖然 C 數(shù)據(jù)類型有 9 C++ 11 種,但是按編碼規(guī)則所有數(shù)據(jù)類型卻只采用了兩種編碼方式,即整型和浮點型。以下對各類型結(jié)合編碼規(guī)則稍作展開:

整型數(shù)據(jù)根據(jù)有無符號位可以區(qū)分為 signed unsigned 兩種類型,對于 signed 的編碼方式,最高位用做符號位用,其它位用作數(shù)據(jù)位,而 unsigned 類型所有位全都用來做數(shù)據(jù)位。數(shù)據(jù)位采用補(bǔ)碼形式編碼,正數(shù)的補(bǔ)碼以原碼給出,而負(fù)數(shù)的補(bǔ)碼為原碼的反碼加 1 給出,因此 11111111 表示無符號整型時為 255 ,表示有符號整型時為 -1 ANSIC 整型類型給出了三種不同字節(jié)長度類型符為 short int long ,但 ANSIC 并沒有規(guī)定每一種類型的具體長度,可以視不同的編譯器而變化,但要求 short 不長于 int 不長于 long 。通常 32 位用 VC 編譯器編譯時 short 2 字節(jié)、 int 4 字節(jié)、 long 也為 4 字節(jié)。

浮點型數(shù)據(jù)編碼規(guī)則不區(qū)分有無符號,一致都采用 1 符號位 n 數(shù)據(jù)位 m 指數(shù)位來表示,其中 n 又被稱為浮點類型的有效位數(shù), n 越大則精度越高,同時 m 越大表示的數(shù)據(jù)越大。 ANSIC 給出了不同字節(jié)長度的浮點數(shù)類型 float double ,同樣沒有規(guī)定每一種類型的具體長度,但要求 float 不長于 double 32 VC 編譯下 float 4 字節(jié), double 8 字節(jié)長度。

字符型,即按 ASCII 碼表排序,以單個字節(jié)長度采用整型編碼方式編碼,也要區(qū)分 signed unsigned 兩種類型。例 char A = 255 unsiged char B = 255, 都是表示同一個字符,但是 A 實際值為 -1 B 的值才是 255

枚舉類型,采用 enum 類型符,可以說是一種自定義類型,為了說明 enum 的有用性,我以代碼方式總結(jié):

    const int sun = 0;

    const int mon = 1;

    const int tue     = 2;

    const int wen     = 3;

    const int thu     = 4;

    const int fri     = 5;

    const int sat     = 6;

    int today = sun;

以上代碼從程序可讀性來說顯然沒有如下采用 enum 方式來的好,至于從代碼執(zhí)行效果來說是否有優(yōu)越性我還不是很清楚,有達(dá)人知道還望指點。

typedef enum WEEKDAY

    {

       sun,

       mon,

       tue,

       tue,

       wen,

       thu,

       fri,

       sat

    }weekDay;

    weekDay today = sun;

枚舉類型實際在內(nèi)存中是以 int 類型值編碼的,當(dāng)?shù)谝粋€枚舉類型常量沒有賦初值時,默認(rèn)為 0 開始,以后依次遞增 1

以上對四種基本類型進(jìn)行了展開,而三種構(gòu)造類型數(shù)組、結(jié)構(gòu)體、聯(lián)合體則是有四種基本類型根據(jù)需求自由組合而成。

數(shù)組類型,其實就是根據(jù)需要用戶自定義以同一種類型聲明一個數(shù)組長度的一組變量,數(shù)組類型本身沒有類型符。在內(nèi)存中以同一編碼規(guī)則連續(xù)編碼一塊數(shù)組長度的空間。

結(jié)構(gòu)類型,則是根據(jù)需求用戶采用不同種類型的數(shù)據(jù)量構(gòu)成的一個新的類型,它以 struct 類型符定義,在內(nèi)存中以事先安排的順序和基本類型編碼規(guī)則編碼。

聯(lián)合體類型,由于結(jié)構(gòu)類型中的每一中基本類型都是分配一塊內(nèi)存,但是有一種需求是一塊內(nèi)存可以以不同的類型來拆分,這種需求在通信中相當(dāng)常見,為此引進(jìn)了聯(lián)合體類型。見下面列子

typedef union CODON

   {

       DWORD m_dwCodon;

       char  m_chCodon[4];

   }Codon;

以上定義了常用的四個長度的碼字,每一個碼字都是一個字符,但是為了程序中比較運(yùn)算方便我們可以用一個 DWORD (四個字節(jié)的整數(shù)類型)值來進(jìn)行整數(shù)比較。

 

指針類型,指針類型本身是一個 32 位即 4 個字節(jié)來描述的正整數(shù)數(shù)據(jù),表示的是變量的內(nèi)存地址,所以不管指針是定義成何種類型用 sizeof 取得的始終是 4 字節(jié)長度,但是指針做增一運(yùn)算時就跟具體的數(shù)據(jù)類型相關(guān)了。如 char *p p++ 就是加 1 ,而 int *p p++ 就是加 4 了。

空類型,即 void 類型,在函數(shù)返回值和形參中用的比較多,并且與指針類型常結(jié)合在一起用,該類型弱化了編碼規(guī)則,但是不能用這種類型來聲明和定義變量。

C++ 新增的兩種類型, bool 型其實也是一個字節(jié)類型的,按照整型數(shù)據(jù)來編碼,其值 true 1 false 0 。至于 class 類型,在內(nèi)存中編碼規(guī)則等同與 struct 。以后將做更多的討論。

 

至此,將 C C++ 內(nèi)的數(shù)據(jù)類型做了一個小小闡述,下一節(jié)將小結(jié)變量。

 

posted on 2006-11-10 23:43 frank.sunny 閱讀(803) 評論(0)  編輯 收藏 引用 所屬分類: C/C++學(xué)習(xí)和實踐

常用鏈接

留言簿(13)

隨筆分類

個人其它博客

基礎(chǔ)知識鏈接

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩一级视频| 亚洲你懂的在线视频| 一本一本大道香蕉久在线精品| 一区视频在线| 亚洲国产天堂久久国产91| 亚洲电影有码| 亚洲免费黄色| 亚洲欧美春色| 久久精品72免费观看| 欧美成人精品h版在线观看| 亚洲国产精彩中文乱码av在线播放| 免费不卡中文字幕视频| 最近看过的日韩成人| 亚洲综合电影一区二区三区| 久久久91精品| 欧美日韩在线精品一区二区三区| 国产精自产拍久久久久久| 国内外成人在线| 一本色道久久综合| 久久久欧美精品| 日韩午夜中文字幕| 久久露脸国产精品| 国产精品天天看| 亚洲开发第一视频在线播放| 久久精品国产亚洲a| 日韩系列欧美系列| 久久综合电影| 国产欧美精品日韩区二区麻豆天美 | 亚洲综合国产| 六月婷婷一区| 国产精品欧美一区二区三区奶水| 亚洲国产精品一区二区www在线| 亚洲欧美第一页| 亚洲精品黄网在线观看| 久久欧美肥婆一二区| 国产精品久久久久久久久久免费 | 久久成人精品电影| 日韩亚洲一区二区| 欧美第一黄色网| 欧美中文字幕精品| 米奇777超碰欧美日韩亚洲| 欧美三级网页| 亚洲国产精品传媒在线观看 | 一区二区三区视频在线播放| 久久伊人精品天天| 亚洲欧美日韩网| 欧美午夜久久久| 日韩视频免费在线观看| 欧美aa国产视频| 久久精品日韩欧美| 国产日韩久久| 久久视频免费观看| 午夜精品av| 国产精品一区二区三区久久| 亚洲午夜视频在线| 宅男精品视频| 国产精品视频免费观看www| 在线视频欧美一区| 亚洲国产婷婷香蕉久久久久久99| 麻豆乱码国产一区二区三区| 在线观看亚洲一区| 欧美成在线观看| 欧美aⅴ99久久黑人专区| 亚洲第一网站免费视频| 欧美jizz19性欧美| 牛夜精品久久久久久久99黑人| 一区在线免费| 欧美激情一区二区| 欧美福利在线观看| 中日韩在线视频| 一本一道久久综合狠狠老精东影业 | 国产一区二区三区直播精品电影| 亚洲一区黄色| 亚洲无线一线二线三线区别av| 欧美视频在线观看视频极品| 亚洲一区二区毛片| 性久久久久久久| 在线观看欧美日韩国产| 亚洲高清三级视频| 欧美日一区二区三区在线观看国产免| 亚洲一区尤物| 久久精品视频在线观看| 亚洲免费av观看| 亚洲欧美国产高清| 亚洲精品国产精品久久清纯直播| 亚洲美女黄网| 国精品一区二区三区| 亚洲国产成人在线| 国产精品天天摸av网| 欧美freesex8一10精品| 欧美日韩亚洲国产精品| 久久国产精品电影| 欧美激情一区二区三区四区| 国产精品美女久久| 久久久久欧美精品| 欧美激情亚洲综合一区| 欧美亚洲三区| 欧美成人精品福利| 久久国产主播精品| 欧美日韩一级视频| 女生裸体视频一区二区三区| 欧美午夜电影在线观看| 欧美国产视频在线观看| 国产精品视频免费| 亚洲欧洲一二三| 黄色欧美日韩| 亚洲免费在线视频| 亚洲天堂男人| 欧美福利视频一区| 噜噜噜噜噜久久久久久91 | 一区视频在线| 一本色道**综合亚洲精品蜜桃冫 | 久久久久久久久久看片| 亚洲欧美日韩国产一区二区三区| 另类专区欧美制服同性| 欧美一区在线看| 国产精品av一区二区| 亚洲国产清纯| 亚洲国产综合在线看不卡| 久久爱www久久做| 欧美一级视频一区二区| 欧美调教视频| 亚洲精品国产无天堂网2021| 亚洲国产成人av在线| 久久riav二区三区| 久久精品国产亚洲a| 国产伦精品一区二区三区免费迷| 一本色道久久| 亚洲手机成人高清视频| 欧美日韩高清在线一区| 亚洲日本欧美天堂| 一区二区三区不卡视频在线观看| 老司机精品久久| 久久噜噜亚洲综合| 国内精品久久久久久久影视麻豆| 亚洲尤物精选| 久久福利影视| 精久久久久久| 久久亚洲精品欧美| 亚洲福利免费| 一区二区三区免费网站| 国产精品成人v| 亚洲曰本av电影| 久久在线视频| 亚洲乱码国产乱码精品精天堂| 欧美激情一区三区| 99精品视频免费观看| 午夜精品999| 国产综合第一页| 麻豆国产精品777777在线| 亚洲激情小视频| 亚洲综合精品自拍| 国产一区二区三区最好精华液| 久久久久国内| 亚洲人线精品午夜| 亚洲欧美日韩综合一区| 黄色成人免费网站| 欧美精品成人在线| 亚洲深爱激情| 在线激情影院一区| 欧美日韩伦理在线| 欧美一区二区三区成人| 欧美高清视频一区二区三区在线观看 | 欧美亚洲视频一区二区| 美女精品国产| 一区二区三区精品久久久| 国产精品卡一卡二| 久久在线播放| 一本大道av伊人久久综合| 久久久久久**毛片大全| 日韩特黄影片| 国产老肥熟一区二区三区| 麻豆成人小视频| 亚洲综合色在线| 亚洲国产视频一区二区| 欧美在线视频在线播放完整版免费观看 | 亚洲一级二级| 欧美激情视频一区二区三区在线播放 | 久久精品视频免费观看| 亚洲靠逼com| 国内欧美视频一区二区| 欧美日韩亚洲视频| 久久婷婷成人综合色| 亚洲一区成人| 亚洲精品1234| 美女脱光内衣内裤视频久久影院 | 亚洲成人在线视频播放| 性色av一区二区怡红| 日韩视频欧美视频| 在线观看亚洲一区| 国产日韩欧美成人| 国产精品久久九九| 欧美精品久久一区二区| 久久久.com| 午夜日韩激情| 亚洲自拍电影| 亚洲尤物在线视频观看| 99在线|亚洲一区二区| 亚洲激情中文1区| 你懂的亚洲视频|