经典笔试面试题——杂题(各种各样的小问题)

来源:互联网 发布:走进科学知乎 编辑:程序博客网 时间:2024/05/17 09:47

1. 嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点。在某工程中,要求设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器。写代码去完成这一任务。

在彪琪数码科技笔试题中我遇到过了。我的答案不知道是否正确,大概差不多吧。看下面的标准答案分析吧:

这一问题测试你是否知道为了访问一绝对地址把一个整型数强制转换(typecast)为一指针是合法的。这一问题的实现方式随着个人风格不同而不同。典型的类似代码如下:
int *ptr;
ptr = (int *)0x67a9;
*ptr = 0xaa66;

一个较晦涩的方法是:
*(int * const)(0x67a9) = 0xaa55;

即使你的品味更接近第二种方案,但我建议你在面试时使用第一种方案。