嵌入式大厂面经 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

#嵌入式笔面经分享##满分简历要如何准备?##嵌入式测试,嵌入式开发#
全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务