嵌问Embedded Interview Lab
题库进阶题库开始练习学习路线企业项目面试辅导关于本站
我的复习
首页题库进阶题库开始练习学习路线企业项目面试辅导关于本站我的复习
嵌问 · 把“知道”练成“讲得清楚”
原创进阶题库学习路线企业项目面试辅导关于本站浏览题库学习记录仅保存在当前浏览器

Question Bank

嵌入式面试题库

按知识、方向与难度筛选;每道题都有分层回答和工程追问。

按当前条件练习

知识分类

全部题目 394C/C++ 与基础 67数据结构与算法 20MCU 与外设 74ARM 与系统基础 42RTOS 45嵌入式 Linux 86调试与可靠性 14项目追问 16综合题组 30
当前条件:C/C++ 与基础 清除
找到 67 道题第 4 / 9 页
C/C++ 与基础MCU / RTOS进阶原理题

全局变量为什么通常在 .c 中定义、在头文件中 extern 声明?

定义为对象分配存储,声明只告诉编译器名称与类型。若头文件直接放普通外部链接定义,被多个翻译单元包含后会产生多重定义或依赖历史暂定定义行为;常见做法是一处定义、头文件 extern 声明。

牛客秋招专题高频面试链接属性
C/C++ 与基础MCU / RTOS进阶原理题

内存对齐为什么既影响结构体大小,也可能影响访问是否异常?

对齐要求决定对象合法起始地址,编译器会在成员之间和结构体尾部插入填充。某些内核能处理非对齐访问但性能下降,另一些会直接产生总线异常;协议数据应逐字段解码或复制到已对齐对象。

高频面试新增100题内存对齐
C/C++ 与基础MCU / RTOS进阶原理题

函数内 static 局部变量为什么可能破坏可重入性?

static 局部变量具有静态存储期,所有调用共享同一对象。若函数被任务、中断或递归重入,共享读改写就会竞争;把状态放进调用者提供的上下文,或明确用同步保护,才能支持独立实例。

高频面试新增60题静态局部变量
C/C++ 与基础MCU / RTOS进阶原理题

函数指针回调接口怎样管理上下文、生命周期和并发注销?

回调通常应与 void *context、调用上下文约定和所有权规则一起注册。注销要防止回调正在执行,可用引用计数、同步屏障或事件循环串行化;绝不能保存已经失效的栈地址。

高频面试新增100题回调
C/C++ 与基础MCU / RTOS进阶原理题

可重入、线程安全和中断安全是同一个概念吗?

可重入强调函数尚未返回时再次进入仍正确,通常不能依赖未保护的共享可变状态;线程安全可借助锁实现,但持锁函数未必可重入;中断安全还要求调用上下文、阻塞和时延都符合 ISR 约束。

高频面试新增100题可重入
C/C++ 与基础MCU / RTOS进阶原理题

大小端不同的设备之间,怎样设计可移植的序列化代码?

协议必须明确每个多字节字段的线序和长度,编码、解码时逐字段转换并做边界检查,不能 memcpy 整个结构体。浮点和位域还要明确表示格式,测试应包含固定黄金字节序列。

高频面试新增100题字节序
C/C++ 与基础MCU / RTOS入门代码阅读

宏函数和 static inline 函数该怎么选?

比较类型检查、重复求值、调试体验、链接语义与代码体积,而不只说“内联更快”。

高频面试C 语言宏编译器
C/C++ 与基础MCU / RTOS进阶代码阅读

对 uint8_t 做取反或移位,为什么结果常常不是 8 位?

小于 int 的整数类型参与大多数算术和位运算前会先做整数提升,因此 `~value` 通常得到 int 宽度的结果。应先在提升后的类型中计算,再用明确掩码或经过范围验证的转换取得目标位宽。

高频面试新增60题整数提升
上一页123456789下一页