查看: 1769|回复: 1
打印 上一主题 下一主题

嵌入式C语言面试题每天一题(13)

[复制链接]
跳转到指定楼层
沙发
发表于 2014-9-16 17:54:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

13. 评价下面的代码片断:


unsigned int zero = 0;
unsigned int compzero = 0xFFFF;
/*1's complement of zero */


对于一个int型不是16位的处理器为说,上面的代码是不正确的。应编写如下:


unsigned int compzero = ~0;


这一问题真正能揭露出应试者是否懂得处理器字长的重要性。在我的经验里,好的嵌入式程序员非常准确地明白硬件的细节和它的局限,然而PC机程序往往把硬件作为一个无法避免的烦恼。
到了这个阶段,应试者或者完全垂头丧气了或者信心满满志在必得。如果显然应试者不是很好,那么这个测试就在这里结束了。但如果显然应试者做得不错,那么我就扔出下面的追加问题,这些问题是比较难的,我想仅仅非常优秀的应试者能做得不错。提出这些问题,我希望更多看到应试者应付问题的方法,而不是答案。不管如何,你就当是这个娱乐吧…


回复

使用道具 举报

板凳
发表于 2014-9-17 12:42:50 | 只看该作者
这可不是个娱乐,挺重要的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入因仑

本版积分规则

快速回复 返回顶部 返回列表