嵌入式笔试刷题(第34天)
11. 程序段的输出结果是(B)
题目:
char str[] = "ABCD", *p = str; printf("%d\n", *(p+4));
解析:
str
内容是:'A' 'B' 'C' 'D'\0
*(p+4)
,也就是访问str[4]
,即字符串结束符\0
。\0
的ASCII值是0!
✅ 答案:B
12. linux操作系统中的shell是(A)
解析:
- Shell 就是命令解释器,用来接受用户输入命令,调用系统功能。
- 当然,Shell也可以写成脚本文件,但它本质上是解释器!
✅ 答案:A
13. 下面哪个不属于Linux进程内存的三部分(A)
解析:
- 进程的主要内存组成: 代码段(Code)数据段(Data)堆栈段(Stack)
- 寄存器段是CPU硬件资源,不是进程的内存段!
✅ 答案:A
14. 向二进制文件尾部增加数据,打开方式是(A)
解析:
"ab"
:append模式,二进制方式。"rb+"
:读写,不是追加。"wb"
:写入覆盖。"wb+"
:读写,但也是覆盖!
✅ 答案:A
15. 关于内存回收,正确的是(B)
解析:
- 内存回收(比如C语言自己没有,但Java有GC)是内存回收程序负责释放无用内存。
- C语言需要程序员手动释放,但GC语言(Java、Python)会自己回收。
✅ 答案:B
16. 写出代码输出内容
代码:
#include <stdio.h> int main(void){ int a=10, b, c, d; b=a=++; c=++a; d=10*a++; printf("b,c,d:%d, %d, %d",b, c, d); }
分析:
a=10
a=++
➔ 错误写法,C语言标准中没有a=++
,题目可能是a++
,我按合理理解处理。 如果是
b
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
嵌入式笔试专栏 文章被收录于专栏
本专栏系统整理了嵌入式方向笔试中常见的知识点和高频考题,涵盖基础理论、常用算法、C语言陷阱、操作系统原理、驱动开发、常见外设通信协议(如 I2C/SPI/UART)、RTOS、Linux 内核、以及实用电路知识等内容。