大家都知道,一个int 或 unsigned int是由4个字节组成的,(《C/C++学习指南》,第3章,第3.2.3节:变量的内存视图

比如,

int   n  =  sizeof( int) ;   // n为4

大家也可以清晰明确地看到内存里,那4个字节就在那,(《C/C++学习指南》,附录:VC2008调试方法)

但问题是:怎样在代码里转成4个字节呢?

方法1:memcpy

这样的方法非常暴力,也不科学。大家先试一下。

unsigned int a = 0x12345678;

unsigned char buf[4];

memcpy(buf,  &a,  4);

观察buf数组的4个元素的值,是不是就是0x78  0x56  0x34  0x12 (嗯,小端的,这就是缺陷,我们想要的结果事实上是 buf[0]=0x12  buf[1]=0x34  buf[2]=0x56 buf[4]=0x78)

方法2:正规方法  (《C/C++学习指南》,第6章,第6.8节)

buf[0]  = a >> 24;

buf[1] = a >> 16;

buf[2] = a >> 8;

buf[3] = a;

用你的VC看一下,是不是正合你意。直接在调试状态下看,别再printf了。

不用谢了,应该的!

最新文章

  1. AtomineerUtils爆破过程记录
  2. WPF学习笔记(3):Path绘制命令zz
  3. Memcache学习php完整一例
  4. 动态设置form表单的元素值
  5. 2016 Al-Baath University Training Camp Contest-1 C
  6. C#: .net序列化及反序列化 [XmlElement(“节点名称”)]
  7. Scala List
  8. c# 类型初始值设定项引发异常
  9. 最精简的代理设计模式demo - 保姆看孩子
  10. VS 2012 单元测试简单配置
  11. lua: Learning Official Doc notes
  12. django 编程小结
  13. Angular 学习笔记 ( PWA + App Shell )
  14. Azure CosmosDB (13) CosmosDB数据建模
  15. Oracle 生成Guid;Oracle 生成多个Guid;Oracle 生成带''-"的Guid
  16. scrapy selenium 登陆zhihu
  17. Easyui 页面设置加载完成之后,满屏
  18. 经典笔试题:用C写一个函数测试当前机器大小端模式
  19. LeetCode(35):Palindrome Number
  20. ACM ICPC, JUST Collegiate Programming Contest (2018) Solution

热门文章

  1. STATUS CODE: 91, occurs when trying to move media from one volume pool to another.
  2. 【BZOJ 4518】[Sdoi2016]征途
  3. jquery常用方法总结(转)
  4. windows关闭进程 批处理端口占用
  5. 屏蔽OCulus Rift的官方警告的方法实测
  6. 【34.88%】【codeforces 569C】Primes or Palindromes?
  7. GCD网络多线程---同步运行,异步运行,串行队列,并行队列
  8. SDE 空间表操作
  9. CF 559B(Equivalent Strings-构造法)
  10. PatentTips – CoAP Segment size determination