① C語言 union聯合體變數 計算問題
union 是共享內存。也就是說,i 和 c[2] 共享內存。
int i; 這里是 short int。
c[0] 在低位元組,這是「小端」碼,PC/widows 用 小端碼 little-endian.
c[1] 在高位。
寫成2進制:
x.c[0]=10; 寫成2進制:00000000 00001010
x.c[1]=1; 寫成2進制: 00000001 00000000
i 寫成2進制:00000001 00001010
換算到10進制
i = 1 * 256 + 1*8 + 1* 2 = 266
直接用10進制 i = x.c[1]*256+x.c[0] = 256+10=266.
② C語言中的聯合又什麼
樓主強,會員都出來了,難道其英文叫做vip?
呵呵
union myunion //聯合體名
{
//添加聯合體變數
};
③ C語言有那些數據類型
C語言有五種基本數據類型:字元、整型、單精度實型、雙精度實型和空類型。盡管這幾種類型數據的長度和范圍隨處理器的類型和C語言編譯程序的實現而異,但以bit為例,整數與CPU字長相等,一個字元通常為一個位元組,浮點值的確切格式則根據實現而定
C語言還提供了幾種聚合類型(aggregate
types),包括數組、指針、結構、共用體(聯合)、位域和枚舉
除v
o
i
d類型外,基本類型的前面可以有各種修飾符。修飾符用來改變基本類型的意義,以便更准確地適應各種情況的需求。修飾符如下:
•
signed(有符號)。
•
unsigned(無符號)。
•
long(長型符)。
•
short(短型符)。修飾符s
i
g
n
e
d、s
h
o
r
t、l
o
n
g和u
n
s
i
g
n
e
d適用於字元和整數兩種基本類型,而l
o
n
g還可用於d
o
u
b
l
e(注意,由於long
float與d
o
u
b
l
e意思相同,所以A
N
S
I標准刪除了多餘的long
float)。
④ C語言中聯合體(union)的使用
uniuon data{ int i ; char c ;float f;}x;
定義了一個結合體名叫x 裡麵包含了int型變數i,char類型c,float類型變數f
int y;這是聲明的一個變數