C語言之資料型別

2022-09-11 13:57:25 字數 1603 閱讀 4158

---恢復內容開始---

在c語言中我們的資料型別分為以下幾大類:

(1)基本資料型別:int, float,double,char,_bool(c99中新加的),列舉enum;

很多朋友對於enum被定義為是基本型別可能會有些迷惑,但是我們都知道列舉型別的特殊之處就是總能把資料變化為整形資料,

我們可以認為列舉就是一種特殊定義過的整形組合。

(2)構造資料型別:陣列,結構體(struct),共用體(union)

1.陣列的基本格式:資料型別  陣列名 【陣列size】 ;我們可以這樣理解它:陣列名相當乙個標籤告訴我們開闢的空間的名稱,我們可以通過這個標籤去操縱一片連續記憶體空間,

而資料型別和陣列大小則是控制開闢的空間的大小。比如int型的大小為10的陣列開闢空間就是4*10;相當於開闢了是個整形資料的大小。

2.結構體的格式: struct  結構體名

各種型別的資料;

結構體是c++學習的先鋒軍,簡單的封裝是結構體在c語言中的乙個亮點。結構體的學習綜合性比較強,因為他的組成元素可以是各種型別變數和函式。

系統分配的記憶體是又其中元素決定,以四個位元組位乙個小塊,四個位元組滿了以後在開闢,如果一塊剩餘的空間不能放下就空下另起一塊。這樣就節省了

很多記憶體。

3.聯合體的格式: union 共用體名

各種型別的資料;

共用體也是可以儲存各種型別的資料,與結構體不同的是它儲存的方式很大程度上只是為了節約記憶體,它以各元素中占用最大的元素為該公用體的記憶體占用。

但在呼叫時只能呼叫其中某個元素,同一時間片不能有多個元素同時被呼叫,所以對它不熟悉的話還是不要用的好。

(3)指標:是c語言的精華和糟粕所在,任何東西都像一把雙刃劍。(對於指標我會單獨說的,希望大家指正)。所有的指標都是4位元組大小,存放的是指向空間的首位址。

(4)void:他不能直接去宣告變數,一般有兩種用法:1.函式入參和返回值的限制,2.修飾指標時,該指標可以強制轉換成各種型別的指標。

我們都知道作業系統在我們的程式執行時為我們開闢了大部分記憶體空間(靜態變數是編譯和鏈結是開闢的),乙個函式結束是它所申請的動態變數就被系統自動**。

我們可以形象的看成分配空間的過程就是貼標籤的過程,表明這塊記憶體屬於誰.而系統**的過程就是去掉標籤,讓這塊記憶體變成無主之物。

那麼資料型別在這一過程中有扮演了怎樣的角色呢?其實資料型別就是告訴我們是用魚缸放魚還是用花盆養花的乙個過程,魚草的生活空間大小和方式就被我們決定了。

所以說資料型別是我們與系統進行交流的第一步。

---恢復內容結束---

C語言之資料型別 整數型別

c語言的變數型別 如 char x 1 儲存的值是 0000 0001 char y 1 儲存的值是 1111 1111 注意 int在16計算機中與short寬度一樣,在32以上的計算機中與long一樣 見原碼,補碼,反碼 資料溢位,是把高位捨棄還是低位捨棄?實驗 c 執行轉反彙編 因此 是捨棄高...

c語言之資料型別長度

c語言之資料型別長度 分享 2011 05 30 20 57 青雲清 瀏覽 219072 次 急2011 05 30 21 04 提問者採納 不要誤人子弟啊 搞清楚再貼出來 追問 那你的答案是啥呢?追答 16位 2,4,4,8,1 32位4,4,4,8,1 二 資料型別對應位元組數 程式執行平台 不...

C語言之整型資料型別

整型資料就是整數。1 整型資料的分類 整型資料的一般分類如下 以下說明的在記憶體中所佔的位元組數均是在vs2012這個開發工具裡面的 基本型 型別說明符為int,在記憶體中佔4個位元組。短整型 型別說明符為short int或short。所佔位元組和取值範圍均與基本型相同。長整型 型別說明符為lon...