- 4
- 0
- 约1.67千字
- 约 11页
- 2020-11-06 发布于天津
- 举报
PAGE
PAGE #
c语言面试找错题
1、 C语言同意一些令人震惊的结构,下面的结构是合法的吗,
如果是它做些什么?
int a = 5, b = 7, c;
c = a+++b;
这个问题将做为这个测验的一个愉快的结尾。 不管你相不相信, 上面的例子是完全合乎语法的。问题是编译器如何处理它 ?水平不高 的编译作者实际上会争论这个问题, 根据最处理原则,编译器应当能 处理尽可能所有合法的用法。因此,上面的代码被处理成:
PAGE
PAGE #
c = a++ + b;
因此,这段代码持行后a = 6, b = 7, c = 12 。
如果你知道答案,或猜出正确答案,做得好。如果你不知道答 案,我也不把这个当作问题。
我发现这个问题的最大好处是这是一个关于代码编写风格,代 码的可读性,代码的可修改性的好的话题。
2、下面的代码输出是什么,为什么? void foo(void)
un sig ned int a = 6;
int b = -20;
(a+b 6) ? puts( 6 ) : puts( = 6
}
这个问题测试你是否懂得 C语言中的整数自动转换原则,我
发现有些开发者懂得极少这些东西。 不管如何,这无符号整型问题的
答案是输出是6 。原因是当表达式中存在有符号类型和无符号类型 时所有的操作数都自动转换为无符号类型。因此-20变成了一个非常 大的正
您可能关注的文档
- 7.4-Z03-01环境外包监控管理办法.doc.docx
- 7.4-Z03-02-F4电梯保养检查记录表(2).doc.docx
- 7.4-Z03-F3供方申请(评审)表(2).doc.docx
- 7.5.1-A01-01-F2安全员巡查记录表.doc.docx
- 7.5.1-A01-02-F1物资搬运放行条.doc.docx
- 7.5.1-A01-02-F4公司进出人员登记表.doc.docx
- 7.5.1-A01-03-F1车位租用协议书.doc.docx
- 7.5.1-A01-03-F5车辆临时停放服务凭证(2).doc.docx
- 7.5.1-A01-04-F2拾遗物品登记表(2).doc.docx
- 7.5.1-A01-09-F1租住人员情况登记表(2).doc.docx
- 2026+循证建议:英克司兰在慢性肾脏病患者中的应用解读.pptx
- 2026+中国循证专家共识:儿童肺栓塞的管理 (1)_final.pptx
- 2026+中国循证专家共识:儿童肺栓塞的管理 (1)_repaired.pptx
- 2026+中国循证专家共识:儿童肺栓塞的管理_final.pptx
- 2026+中国循证专家共识:儿童肺栓塞的管理_repaired.pptx
- 2026+专家建议:嗜酸性食管炎组织学报告标准化.pptx
- 2026+最佳实践共识建议:所有医院发生的尿路感染的预防策略.pptx
- 2026+paflar+指南:少关节型幼年特发性关节炎_repaired.pptx
- 2026+PANLAR建议:少关节型幼年特发性关节炎的治疗.pptx
- 2026+国外实践指南+:女性首次经历精神病发作时首选的抗精神病药物.pptx
原创力文档

文档评论(0)