【 以下文字转载自 NewExpress 讨论区 】
发信人: feiy (null), 信区: NewExpress
标 题: 上午面试了一个小孩,问了一个问题是不是太过分了
发信站: 水木社区 (Thu Jul 8 18:25:14 2021), 站内
面试的是智能硬件固件相关的。小孩背景和综合素质不错。
然后我随口问了一句:
下面一段代码
char a = -5;
if(a<0) print("1");
else print("2");
会打印什么? 结果小孩满脸露出疑惑然后略带有点生气的表情看着我,迟疑了半分钟后
说,会打印出1. 我问一定时打印出1吗? 然后他好像更多了一些觉得被羞辱的生气的表
情,说,难道不是打印出1?
我的本意是,随便问问想看看这个小孩是否知道,char 不一定总是signed的,与编译选
项有关。因为很多产品的bug,都是因为类似此处的不注意所致。而且,现在越来越多的
编译器,缺省的char反而都是unsigned的16位,需要你主动设置对应的编译选项,才会是
signed的8位。
结果小孩的表情,反而让我也觉得,草率装逼了问了不该问的问题。因为我跟他说了,char不一定总是signed的,也不一定总是8位的,与编译选项有关,但小孩走的时候还都是气鼓鼓的,搞得我自己反而觉得难堪该被批
大家觉得我问这个问题,是不是太那个了点?
--
修改:feiy FROM 111.199.218.*
FROM 111.199.218.*