嵌入式笔试刷题(第46天)
11. 输出结果为:
int x = 4; x += x++ + ++x; // x = 4 + 4 + 6 = 14
答案:C. 14
解释:
- 表达式展开顺序依赖编译器,但多数情况
x++
先取旧值 4,再自增,++x
得到 6; - 所以计算为
4 + 4 + 6 = 14
。
12. 输出结果为:
int a = 5; printf("%d,%d", a++, ++a);
答案:B. 6, 6(但未定义行为,编译器可能不同)
解释:
- 同一变量在一次表达式中被多次修改是未定义行为;
- 常见结果是
a++ = 5
(副作用之后变6),++a = 6
; - 输出可能为
6, 6
。
13. #include
是什么机制?
答案:B. 文件包含
14. 段错误可能由下列哪个原因引起?
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
嵌入式笔试专栏 文章被收录于专栏
本专栏系统整理了嵌入式方向笔试中常见的知识点和高频考题,涵盖基础理论、常用算法、C语言陷阱、操作系统原理、驱动开发、常见外设通信协议(如 I2C/SPI/UART)、RTOS、Linux 内核、以及实用电路知识等内容。