有符号数的表示:原码,反码,补码 原码:直接将二进制按照正负数的形式翻译成二进制就可以 反码:将原码的符号位不变,其它位依次按位取反 补码:反码+1 正数的原,反,补码都相同 对于整形:数据存放内存中其实存放的是补码 大小端:大端机:数据的低位存在内存的高地址 小端机:数据的低位存在内存的低地址
区分大端机小端机
int check_sys()
{
int i
= 1;
return (*(char*)&i
);
}
int main()
{
int ret
= check_sys();
if(ret
== 1)
printf("小端机\n");
else
printf("大端机\n");
return 0;
}
int check_sys()
{
union
{
int i
;
char c
;
}un
;
un
.i
= 1;
return un
.c
;
}
转载请注明原文地址: https://lol.8miu.com/read-18926.html