歌乐电子一道非常easy的笔试题目居然搞错了!!!

Posted clnchanpin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了歌乐电子一道非常easy的笔试题目居然搞错了!!!相关的知识,希望对你有一定的参考价值。

技术分享

题目打开图片就能够看到

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,问题居然是把数组的脚标给搞错了。非常是遗憾,吸取教训吧。


以上是关于歌乐电子一道非常easy的笔试题目居然搞错了!!!的主要内容,如果未能解决你的问题,请参考以下文章

MySQL自增ID,居然大部分人都搞错了!?

2018微软实习笔试一道dp题目总结

头条前端笔试最后一道题

值得一做》一道类似于货车运输的题目(BZOJ3732)(easy+)

HDU 3791二叉搜索树解题(解题报告)

89%对3年Java的晋级考核,根本不是熟练度,别搞错了...!