watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjI0NzQ2Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="700" height="500" alt="">

题目打开图片就能够看到

void main(void)

{union unt

       { unsigned char uc[4];

          unsigned int ui; };

       union unt t;

       t.ui=0x12345678;

       printf("%d\n",t.uc[1]);}

 

共同体在嵌入式开发中是非常少用的,所以在复习的时候也没有去细致去看,百度了一下。共同里里面的变量用的是同一个存储空间,也就是说,我在共同体里面尽管声明了两个变量,uc[4]和int ui,可是实际上他们的地址是一样的。

在这个题目里面uc数组用的是四个字节。而ui 整型也刚好是四个字节。所以初始化了ui相当于也初始化了uc。假设把数组类型改成int,则这个共同体所占用的空间就是4*4=16个字节了。“各成员共享一段内存空间,一个联合变量的长度等于各成员中最长的长度。

”详细上百度百科能够看讲的非常清楚。

而大端和小端则是处理器存储数据的结构问题,大端是高位数据存储在低位地址,而小端高位数据存储在高位地址,所以,从这一题能够看出uc[0]==0x12,uc[1]==0x34,uc[2]==0x56,uc[3]==0x78,所以答案应该是B,非常遗憾。看了下昨天的考卷我居然选的是A,问题居然是把数组的脚标给搞错了。非常是遗憾,吸取教训吧。

最新文章

  1. 标准io与文件io
  2. 【算法之美】求解两个有序数组的中位数 — leetcode 4. Median of Two Sorted Arrays
  3. JavaScript高级 引用类型(二)《JavaScript高级程序设计(第三版)》
  4. [HDOJ1171]Big Event in HDU(01背包)
  5. android get uuid获取uuid
  6. Top命令查看内存
  7. C/C++ ceil和floor函数
  8. HTML中发送方式(method)中get和post的比较
  9. Hadoop安装(2)安装hadoop 前的centos 设置
  10. fake it till you become it
  11. Windows 8 – Reason 442: Failed to enable Virtual Adapter
  12. MYSQL创建用户Unknown column 'plugin' in 'mysql.user'的解决方法
  13. c语言构造类型之数组_01
  14. Git_学习_03_ ignore文件配置
  15. 点击<a>页面跳转解决办法/跨域请求,JSONP
  16. 如何设置访问内网web项目
  17. XMind8 破解激活教程(最详细,一定是有效的!!!)
  18. UVa 11762 Race to 1 (数学期望 + 记忆化搜索)
  19. 重构改善既有代码设计--重构手法07:Remove Assignments to Parameters (移除对参数的赋值)
  20. FPGA 17最佳论文导读 ESE: Efficient Speech Recognition Engine with Compressed LSTM on FPGA

热门文章

  1. Hardwood Species(map)
  2. js基本功能大全
  3. 【寒假集训系列DAY3】
  4. POJ 3253 STL优先队列
  5. Eclipse 每次ctrl-c ctrl-v 就变慢?
  6. inline-block默认间距解决方法
  7. 解决Latex复制到公众号可能报“图片粘贴失败”的问题
  8. 控制台输入年龄,根据年龄输出不同的提示 ------if……else if ……else 语句
  9. 【Linux】修改Linux操作系统字符集与Oracle数据库一致
  10. PHP获得文件的大小并转换格式