【求职上岸面试问题分享01】上海某电子 嵌入式

#面试问题记录#
一、时间线:
    投递    3.13
    笔试    3.15
    面试    3.18

二、面试问题:
    1.自我介绍
    2.简历项目介绍1
    3.简历项目介绍2
    4.功能实现?
    5.完成指标是什么?
    6.成绩好?为什么没准备考研?
        更看重“学以致用”的成长路径。相较于学术研究,我更倾向于通过实际项目快速提升技术深度。如果公司提供完善的内部培训机制,那就再好不过啦!
    7.为什么想去外地工作,有没有考虑到4、5年回本地?
    8.笔试没做好?什么原因?
    9.死锁?
    10.进程和线程哪个用得多?
    11.还有什么想了解的?研究方向?

三、自己总结的其他高频问题:
公司简介:公司是专注于激光加工自动化领域的高新技术企业​,我自己的话可能更关注嵌入式领域的部分,比如:
    1.实时控制系统:如随动控制系统,需要嵌入式设备完成高精度运动控制,涉及RTOS开发、硬件驱动优化等核心技术。
    2.工业级通信协议开发:如总线控制系统,需要完成 高精度、安全性 的定制化开发。(FSCUT8000超高功率总线系统)
    3.智能硬件集 成:公司推出的智能卡盘、精密加工数控系统等硬件产品,均需嵌入式开发实现传感器融合、边缘计算等功能模块。

1.堆和栈的区别包括:
    A. 栈(stack)是由系统自动分配的。例如,声明函数中一个局部变量int b;,那么系统自动在栈中为b开辟空间。堆(heap)需要程序员自己申请,并在申请时指定大小。
    B. 堆在操作系统中有一个记录空闲内存地址的链表,当系统收到程序的申请时,系统就会开始遍历该链表,寻找第一个空间大于所申请空间的堆节点,然后将该节点从空闲节点链表中删除,并将该节点的空间分配给程序
    C. 堆是向高地址扩展的数据结构,内存区域不一定连续,栈是向低地址扩展的数据结构,是连续的内存区域。
    D. 堆是由 malloc() 等语句分配的内存,一般速度比较慢,而且容易产生内存碎片,不过用起来很方便。栈由系统自动分配,速度较快,但程序员一般无法控制

2.关于 virtual void Draw() =0,下面说法正确的是:ACD
    A. 它是纯虚函数     
        = 0 表示这是一个纯虚函数,它没有函数体,必须在派生类中实现。
    B. 它在定义它的类中必须实现     
        纯虚函数在定义它的类中 不需要实现,它的存在是为了强制派生类实现该函数。
    C. 定义它的类不可实例化         
        包含纯虚函数的类称为 抽象类,抽象类不能直接实例化,只能通过派生类实例化。
    D. 如果一个类要继承一个 ADT 类,必须要实现其中的所有纯虚函数    
        如果一个类继承了一个抽象类(ADT 类),它必须实现其中的所有纯虚函数,否则它仍然是一个抽象类,无法实例化。

3.在 C++ 中,类的大小(sizeof)受成员变量、虚函数表指针(vptr)以及内存对齐规则的影响。以下是类 A 的分析:
类 A 的成员分析
    成员变量:
        int _a1:占 4 字节。
        static int _a2:静态成员变量不占用类的大小,因为它存储在全局/静态区。
        虚函数:
        virtual void fun2():虚函数会引入一个虚函数表指针(vptr),用于指向虚函数表。
    虚函数表指针(vptr)的大小
        32 位系统:指针占 4 字节。
        64 位系统:指针占 8 字节。
    内存对齐规则
        在 32 位系统中,内存对齐通常为 4 字节。
        在 64 位系统中,内存对齐通常为 8 字节。
全部评论
mark面经
点赞 回复 分享
发布于 05-29 12:27 山东
mark面经
点赞 回复 分享
发布于 05-29 12:27 福建
mark面经
点赞 回复 分享
发布于 05-29 12:27 河南
mark面经
点赞 回复 分享
发布于 05-29 12:27 重庆
mark面经
点赞 回复 分享
发布于 05-29 12:27 湖南

相关推荐

评论
点赞
收藏
分享

创作者周榜

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