結構體、共用體、列舉:
分析:首先宣告的結構體元素year的位址是最低的(0012ff74),而最後宣告的day的位址是最高的(0012ff7c)。而我們又知道在棧中宣告變數的時候,位址是從高到低的分配的.因此,切記在結構體中宣告的變數與直接在外面宣告是不一樣的.在結構體中,最先宣告的變數放在最低位的.
另外,union的記憶體是共享的.
enum的使用:列舉元素是常量.在c中, 預設下,第乙個枚舉子被賦值0,接下來的枚舉子取值是前面乙個枚舉子的取值+1.列舉的取值範圍:如果某個列舉中所有枚舉子的值均非負,該列舉的表示範圍就是[0:2^k-1],其中2^k是能使所有枚舉子都位於此範圍內的最小的2的冪;如果存在負的列舉值,該列舉的取值範圍就是[-2^k,2^k-1].
列舉,結構體,共用體
列舉的定義 enum log level dbg,inf,war,err,fat,all,offvoid writeinfor log level level switch level case dbg printf d n dbg 上述定義的列舉型別,預設為dbg 0,inf 1,依次類推。1 列...
結構體 共用體 列舉
一 結構體 1.結構體和類一樣定義時最後要加分號 2.結構體型別定義變數時struct關鍵字不能省略 3定義好的結構體,系統對之不分配儲存單元 4.c99標準允許對某一成員初始化 5.不能企圖輸出結構體變數名來達到輸出結構體的目的 6.同類結構體間可以相互賦值 二 共用體 1.幾個不同的變數共享同一...
結構體,共用體,列舉體,typedef
概念 結構體時一種構造資料型別 用途 把不同型別的資料組合成乙個整體 記憶體 各成員所佔記憶體空間的累加 一.結構體的宣告與定義變數的方法一共有三種 1.常規定義 struct aa 注意大括號後面有分號 變數定義 struct 機構體名 結構體變數名錶 如 struct aa aa,bb 前面的s...