書上說正32767,負32768(註意,不是負32767!)
鄭32767原碼:011111111165438。
負32767原碼:1111111165438+。
-
為揭示內部代碼,聯合體可輸出16查看:
# include & ltstdio.h & gt
# include & ltstdlib.h & gt
聯合x{
int a;
短s[2];
} ;
void main()
{
聯合x A;
A.a = 32767
printf("long 32767: %x %x %04x\n ",A.a,A.s[0],a . s[1]);
a . a = 0;
a . s[0]=-32767;
printf("short -32767: %x %x %04x\n ",A.a,a . s[0]& amp;0xffff,a . s[1]);
a . a = 0;
a . s[0]=-32768;
printf("short -32768: %x %x %04x\n ",A.a,a . s[0]& amp;0xffff,a . s[1]);
}