嵌入式大厂面经 4(持续更新中!)

这是一个嵌入式大厂面试题专栏,每天更新高频面试题。专栏将包含题目描述、详细解析、相关知识点扩展以及实际代码示例。内容涵盖操作系统、驱动开发、通信协议等核心领域,并结合实际项目经验进行分析。每道题目都会附带面试官可能的追问方向,帮助大家更好地准备面试!

1. 指针的大小

  • 指针大小与系统架构相关,而不是与指向的数据类型相关
  • 32位系统:所有指针都是4字节
  • 64位系统:所有指针都是8字节

示例代码:

void testPointerSize(void) {
    char *p1;
    int *p2;
    double *p3;
    void *p4;
    int (*p5)(int);  // 函数指针
    
    printf("char*: %d\n", sizeof(p1));     // 32位系统为4,64位为8
    printf("int*: %d\n", sizeof(p2));      // 同上
    printf("double*: %d\n", sizeof(p3));   // 同上
    printf("void*: %d\n", sizeof(p4));     // 同上
    printf("function*: %d\n", sizeof(p5));  // 同上
}

2. 函数指针和指针函数

函数指针

  • 指向函数的指针
  • 用于回调函数、函数表等场景
// 函数指针示例
typedef int (*Operation)(int, int);  // 定义函数指针类型

int add(int a, int b) { return a + b; }
int sub(int a, int b) { return a - b; }

void testFunctionPointer(void) {
    Operation op = add;  // 函数指针指向add函数

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

嵌入式面试八股文全集 文章被收录于专栏

这是一个全面的嵌入式面试专栏。主要内容将包括:操作系统(进程管理、内存管理、文件系统等)、嵌入式系统(启动流程、驱动开发、中断管理等)、网络通信(TCP/IP协议栈、Socket编程等)、开发工具(交叉编译、调试工具等)以及实际项目经验分享。专栏将采用理论结合实践的方式,每个知识点都会附带相关的面试真题和答案解析。

全部评论
😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮😮
1 回复 分享
发布于 03-25 09:22 上海
strlen 函数用于计算字符串的长度。它的头文件: <string.h> </string.h>
1 回复 分享
发布于 03-25 09:24 上海
点赞 回复 分享
发布于 03-25 09:07 山西
很棒很棒值得推荐
点赞 回复 分享
发布于 03-25 11:20 黑龙江

相关推荐

评论
3
3
分享

创作者周榜

更多
牛客网
牛客企业服务