c语言中整数-9在内存中的存储形式是什么
2个回答
展开全部
c语言中整数-9 处理为 long int 即4字节。-9 用 补码表示。
补码 等于 不计符号位 的 反码 加 1。
-------
可以用 union 变量 查 每个字节的 内容。
假定 你 用 Windows 个人电脑,则是 小端 码。
程序如下:
#include <stdio.h>
union uu{
int x;
unsigned char a[4];
} u;
main()
{
int i;
u.x = -9;
for (i=3;i>=0;i--) printf("%02x ",u.a[i]);
return 0;
}
输出 16 进制:
ff ff ff f7
二进制: 11111111 11111111 11111111 11110111
补码 等于 不计符号位 的 反码 加 1。
-------
可以用 union 变量 查 每个字节的 内容。
假定 你 用 Windows 个人电脑,则是 小端 码。
程序如下:
#include <stdio.h>
union uu{
int x;
unsigned char a[4];
} u;
main()
{
int i;
u.x = -9;
for (i=3;i>=0;i--) printf("%02x ",u.a[i]);
return 0;
}
输出 16 进制:
ff ff ff f7
二进制: 11111111 11111111 11111111 11110111
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询