返回信息流今天去北大博雅酒店参加了华为的笔试,感觉出题质量真不敢恭维,有几道很明显的错误。
首先选择题这么一道:
意思大概如下:
#include <stdio.h>
union {
struct s {
unsigned X1:2;
unsigned X2:3;
unsigned X3:3;
}S;
char c;
}X;
int main()
{
X.c = 100;
printf("%d", X.S.X3);
return 0;
}选项是:A 4 B 0 C 6 D 8
很明显,这道题目有问题,正确的答案在小端机器上应该为3.
还有,字符串问题:
char *s = "abcd";
s[0] = 0;
上面这个很不严谨!虽然不能说错,因为C语言本身并没有内存属性,就语言本身来说,问题不大。但实际上行不通。为什么呢?因为现在的CPU基本上会有内存保护属性,上面那常量基本只能读而不能写。当然了,放在DOS上面是不会错的。但放在Linux和Windows上,几乎一定会出错。
其他的错误就不再说了
哎 出题的人 真不知道说啥了。。。
这是一条镜像帖。来源:北邮人论坛 / cpp / #43360同步于 2010/9/6
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
关于今天华为笔试的问题
jmpesp
2010/9/6镜像同步22 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
高手确实应该直接去cisco以上的公司。
【 在 jmpesp 的大作中提到: 】
: 今天去北大博雅酒店参加了华为的笔试,感觉出题质量真不敢恭维,有几道很明显的错误。
: 首先选择题这么一道:
: 意思大概如下:
: ...................
【 在 Letsgo 的大作中提到: 】
: 小端应该是和字节序有关,而与字节中的位序无关吧?应该都是3吧
大小端对于机器是字节序,但对于编译器 那可就跟位序有关了
也许大公司不屑这类小事呢
【 在 jmpesp 的大作中提到: 】
:
: 【 在 wks 的大作中提到: 】
: : 华为是不是委托别的测试机构出的题啊?
: ...................