嵌入式秋招总结

面试中无非几个流程:
1、笔试:主要是考核C/C++的知识,单片机基础知识,Linux。这三大模块,我就简述一些吧。比如C语言的结构体和联合体区别,单链表和双向链表,使用指针需要注意什么,判断大小端模式,写strcpy函数的编程,递归的题目,单片机考一些指令,中断,还有一些硬件知识,Linux考查TCP建立服务器的流程,TCP与UDP的区别,线程与进程的区别。
2、技术面试:我的技巧是,首先你做自我介绍,然后也要说明你对这个岗位的知识有在学校自学,然后就接着说让我简述一下自己的项目,我的项目是5个,你就说大概功能和流程就行了。(这里其实就是不断输出,让面试官接不了话,一般我自我介绍完都得5分钟以上)然后就到面试官问你问题了,这里有个重点要注意,面试官只会问你简历里的,所以简历写你会的就好啦。
遇到问题大概阐述:(我就记得一些重要)
1、 字符串数组打印(指针的步长)
1.1 指针变量+1
1.2 字符串数组的步长
2、大端小端
3、异步IO和同步IO区别
4、变量a的不同定义
5、关于char越界的数值
6、利用移位、与实现模
7、无符号与有符号相加结果为无符号类型
8、实现某一位置0或置1操作,保持其它位不变
9、设置一绝对地址为0x67a9的整型变量的值为0xaa66
10、中断函数中的注意问题
[10.1 什么是不可重入函数]
10.2 如何写出可重入的函数?
11、malloc内存分配
11.1malloc申请大小问题
11.2 malloc底层实现原理具体分析
1)brk 是将数据段(.data)的最高地址指针 _edata 往高地址推
2)mmap 是在进程的虚拟地址空间中(堆和栈中间,称为“文件映射区域”的地方)找一块空闲的虚拟内存。
12、变量全置0与全置1
13、你真的了解数组吗?
14、写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个
15、说明关键字volatile有什么含意,并给出例子
15.1 外围设备的特殊功能寄存器
15.2 在中断服务函数中修改全局变量
15.3 线程之间共享变量(在多线程中修改全局变量)
15.4 volatile的顺序性

上述问题在大佬的专栏里有收录,有意的小伙伴可以关注一下!

#面经#
全部评论

相关推荐

点赞 评论 收藏
分享
点赞 5 评论
分享
牛客网
牛客企业服务