国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

郴州seo排名搜外網(wǎng) seo教程

郴州seo排名,搜外網(wǎng) seo教程,上海軟件開發(fā)外包,網(wǎng)站怎么做隱藏真實ip前言 最近在嘗試閱讀一些系統(tǒng)庫的源碼,但是其中存在很多讓我感到既熟悉又陌生的語法。經(jīng)過資料查閱,發(fā)現(xiàn)是 C 語言中的共用體和位域。于是,趁著課本還沒有扔掉,將一些相關的知識點記錄在本文。 文章目錄 前言共用體 (union)枚舉…

前言

最近在嘗試閱讀一些系統(tǒng)庫的源碼,但是其中存在很多讓我感到既熟悉又陌生的語法。經(jīng)過資料查閱,發(fā)現(xiàn)是 C 語言中的共用體和位域。于是,趁著課本還沒有扔掉,將一些相關的知識點記錄在本文。

文章目錄

  • 前言
  • 共用體 (union)
  • 枚舉 (enum)
  • 位域
  • 參考資料

共用體 (union)

公用體和結構體相似,也是一種數(shù)據(jù)構造機制。但是結構體中的各成員變量順序排列存儲,每個成員變量都有自己獨立存儲空間,而共用體中所有成員變量共享同一片內(nèi)存區(qū)域,一個共用體變量在每個時刻里只能保存它的某個成員變量的值。

定義格式如下:

union 共用體名 {成員列表
};

下面是共用體和結構體占用內(nèi)存的情況:

#include <stdio.h>union UnionData {int a;float b;double c;char d;
};struct StructData {int a;float b;double c;char d;
};int main() {printf("%lu %lu\n", sizeof(UnionData), sizeof(StructData));return 0;
}

控制臺輸出結果:

8 24

在這里插入圖片描述
共用體能支持在同一塊內(nèi)存區(qū)域對不同的數(shù)據(jù)類型進交替使用,增加了靈活性,節(jié)省了內(nèi)存,通常在系統(tǒng)庫中會有所應用。

枚舉 (enum)

枚舉 (enumeration) 是一系列命名的整型常量,它是一種基本數(shù)據(jù)類型,而不是一種構造類型。在“枚舉”類型的定義中,我們需要列舉出所有可能值,就像列舉一周七天、一年四季等。

定義格式如下:

enum 枚舉名 {枚舉列表};

枚舉的使用例子如下:

#include <stdio.h>// 枚舉定義
enum Season {SeasonSpring = 1,SeasonSummer,SeasonAutumn, SeasonWinter
};int main () {Season a = SeasonSpring;switch (a) {case SeasonSpring:printf("SeasonSpring\n");break;case SeasonSummer:printf("SeasonSummer\n");break;case SeasonAutumn:printf("SeasonAutumn\n");break;case SeasonWinter:printf("SeasonWinter\n");break;}return 0;
}

控制臺輸出結果:

1 2 3

位域

有些數(shù)據(jù)在存儲時并不需要占用一個完整的字節(jié),只需要占用一個或幾個二進制位即可。例如開關只有通電和斷電兩種狀態(tài),用 0 和 1 表示足以,也就是用一個二進位。

出于節(jié)省內(nèi)存的角度考慮,就有了位域這種設計。位域是 C 語音中一種特殊的結構體成員,它允許我們指定它所占的內(nèi)存位數(shù)

定義格式如下:

struct 位域結構名 {類型說明符 位域名 : 位域長度;
};

說明:

  • 一個位域必須存儲在同 1 個字節(jié)中,不能跨兩個字節(jié)。如果一個字節(jié)所剩的空間不足以存儲下一個位域時,應該從下一個字節(jié)開始存儲。
  • 位域長度不能大于 1 個字節(jié)長度,也就是說不能超過 8 位。
  • 位域的數(shù)據(jù)類型只能是 int、unsigned int、char、枚舉等類型。
  • 位域可以沒有位域名,因為無名的位域是不能使用的,所以只是用作填充或調(diào)整位置的作用。例如:
    struct BitStruct {int a : 4;int   : 2;  // 空域,不能使用int b : 4;int c : 4;
    }
    

參考資料

  • https://www.runoob.com/cprogramming/c-bit-fields.html
  • https://book.douban.com/subject/26792521/

本文主要對 C 語言中,共用體、枚舉和位域等三塊內(nèi)容做簡單介紹,涉及到他們在工程中應用的方面很少,如果后面閱讀系統(tǒng)源碼的過程遇到了,會再做進一步補充。

http://m.aloenet.com.cn/news/39069.html

相關文章:

  • 網(wǎng)站空間500m是什么百度 指數(shù)
  • 如何申請免費的網(wǎng)站空間優(yōu)化營商環(huán)境的意義
  • 重慶做網(wǎng)站公司有哪些產(chǎn)品推廣方案怎么寫
  • 北京南昌企業(yè)網(wǎng)站制作創(chuàng)建網(wǎng)站需要什么條件
  • 上海網(wǎng)站推廣服務公司網(wǎng)絡推廣電話銷售技巧和話術
  • 個人網(wǎng)站的色彩設計怎么做香港服務器
  • 手機端企業(yè)網(wǎng)站模板新聞稿范文300字
  • 江蘇省建設廳網(wǎng)站建造師欄網(wǎng)絡推廣圖片
  • 網(wǎng)頁設計與制作視頻seo網(wǎng)絡推廣優(yōu)勢
  • 安平誰做網(wǎng)站好如何推廣自己的業(yè)務
  • 網(wǎng)站開發(fā) 方案搜索引擎優(yōu)化課程總結
  • 網(wǎng)站鏈接的常見形式如何把品牌推廣出去
  • 備案網(wǎng)站的黑名單完整的品牌推廣方案
  • 開源企業(yè)網(wǎng)站建設系統(tǒng)seo網(wǎng)站優(yōu)化教程
  • 公眾號和網(wǎng)站先做哪個廣告投放平臺
  • 建設網(wǎng)站需要的軟硬件重慶公司seo
  • 南昌做網(wǎng)站優(yōu)化價格愛站工具包官網(wǎng)下載
  • 網(wǎng)站開發(fā)學什么編程語言怎么開網(wǎng)店
  • 游戲代理300元一天網(wǎng)絡seo是什么意思
  • 深圳市南山區(qū)住房和建設局官方網(wǎng)站抖音seo排名優(yōu)化公司
  • 做請?zhí)W(wǎng)站b站推廣app大全
  • 上饒商城網(wǎng)站建設百度識圖在線使用
  • 創(chuàng)立一個網(wǎng)站得多少錢整站優(yōu)化關鍵詞推廣
  • 萬戶網(wǎng)絡騙局泉州百度推廣排名優(yōu)化
  • 體現(xiàn)網(wǎng)站特色全球熱門網(wǎng)站排名
  • 建材網(wǎng)站建設 南寧sem代運營托管公司
  • 中山制作企業(yè)網(wǎng)站廣州網(wǎng)站制作服務
  • 公司介紹網(wǎng)站怎么做只要做好關鍵詞優(yōu)化
  • 商城小程序定制公司搜索引擎優(yōu)化的重要性
  • 收錄網(wǎng)站是怎么做的網(wǎng)絡營銷首先要