嵌入式大厂面经 3(持续更新中!)
1. 函数指针
面试题:函数指针的定义和使用方法是什么?
答案解析:
// 定义函数指针类型 typedef int (*Operation)(int, int); // 函数定义 int add(int a, int b) { return a + b; } int sub(int a, int b) { return a - b; } // 使用函数指针 Operation op = add; int result = op(10, 5); // 结果为15 op = sub; result = op(10, 5); // 结果为5
2. 位操作
面试题:常见的位操作技巧有哪些?
答案解析:
// 1. 判断奇偶 bool isEven = (n & 1) == 0; // 2. 交换两数 a ^= b; b ^= a; a ^= b; // 3. 获取最低位1 int lowbit = n & (-n); // 4. 统计1的个数 int count = 0; while (n) { n &= (n-1); count++; }
3. 结构体内存对齐
面试题:结构体内存对齐的规则是什么?
答案解析:
// 1. 基本规则 struct Example1 { char c; // 1字节 int i; // 4字节 short s; // 2字节 }; // 实际占用12字节而不是7字节 // 2. 优化方法 struct Example2 { int i; // 4字节 short s; // 2字节 char c; // 1字节 }; // 实际占用8字节 // 3. 指定对齐 #pragma pack(1) struct Example3 { char c; int i; short s; }; #pragma pack() // 实际占用7字节
更多内容全在下方专栏
全网最受欢迎的嵌入式笔试专栏
笔试专栏包含全部最新的笔试必考考点,非常适合在找工作面经薄弱的同学
3000+订阅还会涨价,提前订阅提前享受,持续更新中。
专栏链接:https://www.nowcoder.com/creation/manager/columnDetail/mPZ4kk
#嵌入式笔面经分享##满分简历要如何准备?##嵌入式测试,嵌入式开发#