C语言中怎样定义变量使其能够保存16进制整数?

[复制链接]
查看11 | 回复5 | 2009-5-8 20:35:13 | 显示全部楼层 |阅读模式
定义为int行不行啊~~~

回复

使用道具 举报

千问 | 2009-5-8 20:35:13 | 显示全部楼层
不能定义为int。 因为会做补码反码操作的。定义为char即可。这样定义:char a = '\x61'; // 保存为十六进制数61;你跑一下:char a = '\x61'; char b = 'a';printf("0x%x,0x%x",a,b);会得到 0x61,0x61 ( a的ascii码16进制即为61)...
回复

使用道具 举报

千问 | 2009-5-8 20:35:13 | 显示全部楼层
可以通过int 或long int存储,16进制整数说到底还是整数,16进制只是一种记数方式。例如,intx=0x16;十六进制(hexadecimal)只是计算机中数据的一种表示方法,规则是“逢十六进一”,并不影响数据的存储。任何数据在计算机中存储的都只是二进制(0/1)数据,只是根据需要输出时相应调整即可。...
回复

使用道具 举报

千问 | 2009-5-8 20:35:13 | 显示全部楼层
进制只不过是个形式。最终还是看大小决定控件了。...
回复

使用道具 举报

千问 | 2009-5-8 20:35:13 | 显示全部楼层
内存单元对你存了什么进去没有任何意见所有数制都可以……输出的时候做限制就好,运算的时候没区别的。...
回复

使用道具 举报

千问 | 2009-5-8 20:35:13 | 显示全部楼层
所有变量中存放的都是二进制补码,引用时根据需要按不同进制引用...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行