用unsigned char如何得到int数据

yueliang1982 2004-12-24 11:44:15
将整形数据4个字节存放的值分别输出

int iTim = 1222110833;
unsigned char* p = (unsigned char*) &iTim;

for(int i = 0; i < sizeof(int); ++i)
{
cout<<int(*(p++))<<endl;
}

输出的结果是:113, 238, 215, 72

那怎么样才能手工算出这个结果了???
也就是得到这个结果的原理是什么啊??
...全文
98 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yueliang1982 2004-12-24
  • 打赏
  • 举报
回复
谢谢!!!
darkstar21cn 2004-12-24
  • 打赏
  • 举报
回复
一个int的存放方式:(window的)
比如1的存放为:00000001 00000000 00000000 00000000 (0x01000000)以8个bit为单位,左边为低位,右边为高为,而不是一般的0x00000001

这只是window的存储方法,各个操作系统都有自己的存储方式,可以自己找下资料惑,实验一下。
pacman2000 2004-12-24
  • 打赏
  • 举报
回复
按16进制,然后一个字节一个字节取。
goodluckyxl 2004-12-24
  • 打赏
  • 举报
回复
把int按二进制存放后
一个一个字节分开就是了

70,023

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧