1. C 中的數組:
數組是通過存儲在連續內存位置的通用名稱訪問的相似數據項的集合。可以使用索引來訪問數組的元素。它們可用於存儲原始數據類型,例如 int、float、double、char 等,但所有元素必須具有相同的數據類型。下麵是一個數組的生動表示。
數組的聲明:
datatype array_name[size]
2. C 中的聯盟:
聯合是一種用戶定義的數據類型,允許在同一內存位置存儲異構元素。聯合的大小是聯合中最大元素的大小。下麵是工會的生動表現。
工會聲明:
union name { datatype element; datatype element; };
數組和聯合的區別:
ARRAY | UNION |
---|---|
相同數據類型的元素的集合。 | 異構數據類型元素的集合。 |
數組可以是一維或二維的。 | 聯合沒有類型。 |
每個元素都分配有一個特定的內存位置。 | 這些元素共享內存位置,其大小等於並集最大元素的大小。 |
所有成員都可以在給定時間包含值。 | 在給定時間隻有一個成員可以包含值。 |
由於所有成員都分配了不同的內存位置,因此內存使用效率不高。 | 有效利用內存,因為所有成員不需要單獨的內存位置。 |
可以使用索引來訪問數組元素。 | 不能使用索引訪問聯合的元素。 |
用法: 數據類型array_name[大小] |
句法: { 數據類型變量1;數據類型變量2; }; |
相關用法
- C語言 Atoi()用法及代碼示例
- C語言 Getchar()用法及代碼示例
- C語言 abs()用法及代碼示例
- C語言 printf() and scanf()用法及代碼示例
- C語言 strchr()用法及代碼示例
- C語言 strcpy()用法及代碼示例
- C語言 strcat()用法及代碼示例
- C語言 宏 assert()用法及代碼示例
- C語言 isdigit()用法及代碼示例
- C語言 islower()用法及代碼示例
- C語言 setlocale()用法及代碼示例
- C語言 cos()用法及代碼示例
- C語言 cosh()用法及代碼示例
- C語言 sin()用法及代碼示例
- C語言 sinh()用法及代碼示例
- C語言 tanh()用法及代碼示例
- C語言 exp()用法及代碼示例
- C語言 ldexp()用法及代碼示例
- C語言 log()用法及代碼示例
- C語言 log10()用法及代碼示例
- C語言 pow()用法及代碼示例
- C語言 sqrt()用法及代碼示例
- C語言 ceil()用法及代碼示例
- C語言 fabs()用法及代碼示例
- C語言 floor()用法及代碼示例
注:本文由純淨天空篩選整理自aktmishra143大神的英文原創作品 Difference between Array and Union in C。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。