1. 程式人生 > >C語言知識點學習之結構體成員變數後加冒號

C語言知識點學習之結構體成員變數後加冒號

typedef struct xx
{    
   unsigned int a:2;  
   unsigned int b:3;
}Xx;
//“unsigned int a:2;“中後面的":2"表示成員a只佔倆個位,而不是我們傳統認為的佔
//4個位元組這樣整個結構體大小就為4個位元組而不是8個位元組,這樣就可以達到節省記憶體
//的目的,緩解晶片資源緊張(這裡以32位編譯器來解釋,不同的編譯器結果不一樣)。
typedef struct yy
{
      unsigned int a:16;
      unsigned int b:8;
      unsigned int c:4;
      unsigned int d:4;
}Yy;
//上面Yy結構體只有4個位元組,但有四個成員變數剛好用完四個位元組。 

相關推薦

C語言知識點學習結構成員變數冒號

typedef struct xx {        unsigned int a:2;      unsigned int b:3; }Xx; //“unsigned int a:2;“中後面的":2"表示成員a只佔倆個位,而不是我們傳統認為的佔 //4個位元組這樣整個結構體大小就為4個位元組而不是8

C語言簡單入門結構和連結串列

C語言的連結串列也是一個很重要很難啃的骨頭,我是這麼覺得的! 以下只是個人對連結串列的總結和記錄方便日後複習所用,如有錯誤,請留言狠批,謝謝! 先說下連結串列的簡單實現:  如上圖,我們定義一個結構體: 1,2,3,4,5是結構體資料。a,b,c,d,e則是指標變

C語言學習7-結構

為什麼使用結構體? struct My { char name[20] = "如風斬嶽"; int age; char addr[50] ; int money; double Coordinates; //..... }; 當我們有這樣一種需求,

C語言 struct結構變數宣告冒號

有些資訊在儲存時,並不需要佔用一個完整的位元組,而只需佔幾個或一個二進位制位。例如在存放一個開關量時,只有0和1兩種狀態,用一位二進位即可。 為了節省儲存空間,並使處理簡便,C語言又提供了一種資料結

c語言:通過指向結構變數的指標變數輸出結構變數成員的資訊

通過指向結構體變數的指標變數輸出結構體變數中成員的資訊。解:程式:#include<stdio.h>#include<string.h>int main(){struct Stu

資料結構C語言學習路(1)——緒論

小白學習資料結構,從基礎知識開始整理起。 1.資料結構是什麼? 2.資料結構在哪裡用? 3.資料結構怎麼用? 小白在開始學習資料結構,提出了這三個問題,希望到學習完成之後可以解決這三個問題。 小白從《大話資料結構》這本書開始學習。 基本概念: 資

C語言根據結構成員變數的地址,得到結構的地址

/** * container_of - cast a member of a structure out to the containing structure * * @ptr: the pointer to the member. * @type: the type of the container s

C語言:constkeyword、結構

data con post -s 標簽 初始化 weight 什麽 聯系 前幾節內容的解說,主要是內存地址及指針的分析。這一節解說一下easy混淆的keywordconstant及結構體的知識。 一、constkeyword 1. 字符常量的指針 char const

C語言博客作業--結構

自增 規律 統一 body 語句 學生 http clas fin 一、PTA實驗作業 題目1:按等級統計學生成績 1. 本題PTA提交列表 2. 設計思路 for i=0 to i=n 如果分數大於等於85,就讓grade為A 如果分數大於等於75,就讓

C語言(三)- 結構

strong 變量初始化 add num ID name oid nbsp clu 一、結構體 1、一般形式 不同類型數據組成的組合型數據結構,即結構體。 結構體類型的一般形式: 1 struct 結構體名{ 2 類型名 成員名1; 3 類型名 成員名2; 4 類型名

C和指針結構和聯合體

第一個 test col 聚合 要求 拷貝 破壞 存儲位置 字節 1、結構體基礎知識   聚合數據類型(aggregate data type)能夠同時存儲超過一個的單獨數據。C語言提供了兩種類型的聚合數據結構,數組和結構體。   數組是相同類型的數據元素的集合,它的每個元

C語言學習路(一)——初識C語言

                      C語言的學習之路(一)——初識C語言 從9月8日踏入大學校園,已近過去40多天了。這篇部落格也是踏入大學的第一篇部落格。內心很慌:因為自己

c語言 利用聯合和結構將IP地址進行列印

       在每一個計算機中都有他自己的IP地址,而IP地址是如何在計算機中儲存的是一直以來我們都不知道的。        在計算機中,IP地址的存放是由10進位制陣列組成的,而計算機將IP地址呈現給我們時則是以點

C語言第8課——結構

結構體 C 陣列允許定義可儲存相同型別資料項的變數,結構是 C 程式設計中另一種使用者自定義的可用的資料型別,它允許您儲存不同型別的資料項。 假設想要跟蹤圖書館中書本的動態,需要跟蹤每本書的下列屬性: Title Author Subject Book ID

C語言-含有指標的結構淺拷貝注意事項

淺拷貝指標覆蓋問題。 下邊程式碼包含: 1,結構體CHSYS_AV_DecParam 2,CHSYS_AV_DecParam的變數m_paramDec 3,函式Create 有兩點需要注意: 第一:判斷if (pParam != &m_paramDec)如果不進行判斷

c語言部落格作業--結構&檔案

1.本章學習總結 1.1思維導圖 1.2.本章學習體會 2.大作業 主要功能: 1位數的一步加減乘除計算 2位數的2步加減運算 3位數的2步加減運算 檢視排名 退出 擴充套件功能: 1.進入選單介面前,需要先輸入使用者名稱、密碼,匹配正確才能進入系統刷題。本功能主要讀賬號檔案user.txt

c語言基礎語法六——結構(完結)

1;關於c語言結構體的引入; 在前面已經介紹了整形(int,long,….),浮點型(flaot,double),字元型(char),還介紹了陣列(儲存一組具有相同型別的資料),字串。但是在實際問題中只有這些資料型別是不夠的,有時候我們需要其中的幾種一起來修飾

C語言 一個例子說明結構變數結構陣列和結構指標

輸入三個學生的個人資訊 包含學號 姓名和三門學科的成績 輸出平均成績最高的學生的學號 姓名 各科成績以及平均成績 程式碼如下(譚浩強c程式設計的例子) #include<stdio.h> struct Student {int num;

ACMNO.43 C語言-成績排序 利用結構解決,是一個進步啦!

題目描述 現有有N個學生的資料記錄,每個記錄包括學號、姓名、三科成績。 編寫一個函式input,用來輸入一個學生的資料記錄。 編寫一個函式print,列印一個學生的資料記錄。 在主函式呼叫這兩個函式,讀取N條記錄輸入,再按要求輸出。 N<100 輸入 學生數量N佔

c語言----定義和使用結構變數

1.結構體型別 由於一個數組中只能存放同一種類型的資料,很不方便,所以C語言允許使用者自己建立由不同型別資料組成的組合型的資料結構,也就是結構體,通俗講就像是打包封裝,把一些有共同特徵(比如同屬於某一類事物的屬性,往往是某種業務相關屬性的聚合)的變數封裝在內部,通過一定方法