礼貌取码,主楼的码显示已有候选人了😭
1 1

相关推荐

2.1   用变量  a   给出下面的定义   (1)一个整型数: int a。  (2)一个指向整型数的指针(一重指针): int *a。  (3)一个指向指针的的指针,它指向的指针是指向一个整型数的指针(二重指针): int **a。  (4)一个有10个整型数的数组 :int a[10]。  (5)一个有10个指针的数组,这10个指针是指向整型数的(指针数组): int *a[10]。  (6)一个指向有10个整型数数组的指针(数组指针):int (*a)[10]。  (7)一个指向函数的指针,该函数有一个整型参数并返回一个整型数(函数指针):int (*a)(int)。  (8)一个有10个指针的数组,这10个指针均指向函数,该函数有一个整型参数并返回一     个整型数(函数指针数组): int (*a[10])(int)。 2.2 下面的代码输出是什么,为什么?  void  foo(void){    unsigned  int a = 6;    int b = -20;    (a + b > 6)? printf("> 6") : printf(" <= 6");}答案:输出是  ">6"。 解读:当运算表达式中存在有符号数和无符号数时,有符号数隐式转换成了无符号数(即底层的补码不变,但是此数从有符号数变成了无符号数)。注意,正数的补码为其本身,负数的补码为其反码+1。因此-20变成了一个非常大的正整数,所以该表达式计算出的结果  ">6"。 2.3   写出  float x   与"零值"比较的  if   语句。答案: if(x >= -0.000001 && x <= 0.000001)解读:因为计算机在处理浮点数的时候是有误差的,所以不能将浮点型变量用"=="或"!="与数字比较,应该设法转化成">="或"<="此类形式。 2.4 下面代码有什么错误? #include void  main() {    char *s = "AAA";    s[0] = 'B';    printf("%s", s);}(1)"AAA"是字符串常量,s是指针,指向这个字符串常量,所以声明s的时候就有问题,应该是cosnt char* s="AAA"。  (2)然后又因为是常量,所以对是s[0]的赋值操作是不合法的。 2.5 下面代码输出是什么? #include void  main() {    int *a = (int *)2;    printf("%d", a + 3);}答案:输出是14。 解读:代码将数值2强制类型转换为int类型指针,int类型指针加3 相当于指向后面第三个int类型变量的首地址,一个int类型变量占4个字节,所以加3相当于指针往后移了12个字节,指向地址14处。以上内容摘自牛客官方专刊《嵌入式岗位笔试面试真题讲解》,该专刊不仅有真题讲解,还有经验分享,不清楚嵌入式该学什么的同学,想找嵌入式实习/正式工作的同学,都可以来看看:    https://blog.nowcoder.net/zhuanlan/v0ELPM嵌入式公司推荐:华为、小米、  OPPO、VIVO、荣耀、一加、   CVTE、   大疆 、insta360影石、  美的 、   TCL 、 海信、创维、烽火、比亚迪、吉利、长安、大众、  经纬恒润 、小鹏、  图森未来、  百度 、   滴滴、蔚来、理想、 联发科、  紫光展锐 、全志、   寒武纪 、  晶晨半导体 、汇顶、   华为、  中兴、   浪潮 、  TP-LINK、讯飞、商汤、   海康威视 、浙江 大华   、360、小马智行、  元戎启行   、  深信服   、移动、联通、电信、旷视、四维图新、中芯国际、复旦微电子。  #嵌入式找工作#
点赞 评论 收藏
分享
嵌入式类岗位大致分为以下几个类型:嵌入式软件开发工程师、驱动工程师、系统软件开发工程师、应用软件工程师、嵌入式测试工程师;还有一些:电子研发工程师、C/C++软件工程师(嵌入式)、智能驾驶软件工程师、机器人软件工程师、硬件产品经理等等。1.1. 嵌入式软件开发工程师A公司岗位描述:1、负责设备软件的设计和交付,包括单片机嵌入式开发、DSP嵌入式软件开发、多线程多任务的动态调度、动态内存管理等软件关键技术研究;2、负责设备软件研发及商用过程中的功能、性能、功耗、可靠性等问题的定位解决;3、负责设备软件新技术的预研和产品实现,提升产品优势;4、跟进行业新技术动态,参与新技术的研究,并能引入到产品开发中。A公司任职要求:1、熟练掌握汇编/C/C++编程语言和基本的常用数据结构,了解操作系统原理;2、熟悉Linux系统编程,嵌入式系统,ARM或单片机,RTOS实时操作系统;3、熟悉HTTP/TCP/UDP等网络协议,熟悉一种或以上接口协议优佳,如:USB、UART、Ethernet、PCIE、EMMC、I2C、SPI等;4、有嵌入式系统或产品的开发项目经验优先;小结:嵌入式软件开发工程师主要负责该部门嵌入式产品的研发工作,固件开发,单元测试,代码维护等,提升产品优势。很多公司都是大类嵌入式软件开发工程师,而不进行驱动、系统、应用工程师等区分。1.2. 驱动工程师B公司岗位描述:1、负责底层驱动及上层应用的开发和调试,外设驱动的开发优化工作,比如Camera、LCD、Sensor等;2、负责软硬件结合新器件技术预研和开发工作;B公司任职要求:(与A公司要求相差不大)C芯片公司驱动岗位描述:1、设计和开发驱动程序(user mode, kernel mode, firmware etc),HAL/API,提供应用程序库的支持,提供包括内存管理,任务管理,硬件资源管理等功能;2、建立驱动程序的开发环境,包括硅前和硅后测试和调试环境,以及相关驱动程序测试工具;3、与硬件工程师和软件工程师协调提供解决平台中出现的问题。C芯片公司任职要求:1、精通C/C++编程,有Linux编程经验者优先;2、熟悉计算机体系构架,算法设计等;3、具备CUDA/OpenCL/GPU shader programming知识和经验者优先;4、有较强学习新知识的能力;具备较强的沟通能力。小结:驱动工程师主要是编写和移植各种芯片驱动,优化硬件设备驱动,一般驱动工程师指Linux上的驱动开发工程师,所以需要精通Linux驱动框架,结合芯片本身去编写驱动,所以芯片公司招聘嵌入式相关的岗位一般是驱动工程师。1.3. 系统软件开发工程师D公司岗位描述:1、参与soc软件开发,包括soc bring up软件开发、IP驱动软件开发、bootloader软件开发、操作系统移植等;2、参与soc 软件、硬件系统验证;3、参与板级外设驱动软件开发与调试;4、参与soc BSP 、soc SDK 软件开发、软件测试。D公司任职要求: (与A公司要求相差不大)小结:系统软件开发工程师主要是编写固件,需要熟悉整个操作系统组成与调度,对固件的稳定性高求很高,是驱动和应用的基础。1.4. 应用软件工程师E公司岗位描述:1、负责嵌入式系统的搭建与维护,熟悉芯片驱动、嵌入式OS、SD接口定义;2、负责软件系统的跨芯片移植(如:NXP系列、STM32系列);3、负责系统集成以及调试工作;4、负责进行嵌入式软件系统的应用开发、优化。E公司任职要求: (与A公司要求相差不大)小结:应用软件工程师主要是编写业务逻辑程序,调用驱动工程师提供的接口控制设备,软件开发过程所涉内容范围非常广,主要使用C语言开发,但经常会涉及其它语言、数据库、前端后台、各种通讯协议等。1.5. 嵌入式测试工程师F公司岗位描述:1、负责嵌入式项目功能测试、性能测试、SDK测试或者自动化测试;2、根据产品需求制定测试方案、设计测试用例,搭建测试环境;3、依据测试用例完成产品的功能测试、硬件指标测试等,记录测试结果,报告与跟踪产品缺陷,并协助研发人员进行缺陷定位与重现;4、编写测试报告,根据测试结果评估软件质量;5、进行测试总结,编写测试相关文档,对测试中存在的问题及时分析与解决,并提出改进建议E公司任职要求:1、有嵌入式软件开发的经验优先;2、有脚本语言(如python/shell)的使用经验;3、有Linux下的自动测试和测试开发的经验;4、熟悉嵌入式调试技术及工具;5、具备良好的沟通表达能力,良好的分析解决问题的能力;剩余的大佬面经总结了  链接在下边  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
分享
01-16 18:31
已编辑
北京邮电大学 C++
找工作前 你要想好 未来5年后,你打算做什么。如果你想就找个稳定的工作,那我建议你考个985研究生,专门去研究某一领域 ,毕业就按这个方向去投简历,最好在上学期间做个自己实验小产品,那面试拿产品更有说服力。如果你想创业,我建议找个创业型公司,但是要求就是你能接触到整个项目,目的不是钱,是为了5年后你能积累足够的知识。这种公司不能太抠门,我指的是研发经费不能少,你可以工资少,但是研发经验不能扣扣搜搜,到时候你学习买材料都不给拨款,那就没什么意义选择创业型,这种可能不适合大部分人,首先你要问你自己,对这行是不是真的感兴趣,如果你只为了工作而工作,最好别去这种创业型公司。你记住一句话,工作为了你自己以后有更好的发展,钱少,没关系 但是我要学到东西。如果你下班都不能拿出精力去学习,只能说你可能不适合创业。还是找个稳定工作上班为好。楼主之所以能研究2天3夜 去解决问题,最大原因是我喜欢这行,我非常喜欢自己做点小产品以达到自己内心的满足感。可以说,不是为了钱,就是兴趣爱好使然。还有两句话 ,一直激励我:1. 书山有路勤为径 学海无涯苦作舟我自认为我足够聪明,学习能力超强,应该超过60%人的智商了,不过我还是很勤奋。能静下心去专心做一件事。如果你们想成功,就必须达到忘我的境界。2 多年后你会感激当初那么奋斗的自己!当你到死的前一天,你回想你这辈子所有经历,你觉得你没白活,你作为一个人 值得了。不是行尸走肉。我这人信神学,我觉得有平行世界,我们每天做梦可能会看到平行世界的自己。所以我对死亡无所畏惧,但是我要活得有意义。这辈子我设计很多产品,走过很多地方,教育好下一代,这就是我人生目标很多人私信我,想转行,看到我写的这些,还是有些疑惑,我再此给些建议吧。1 计算机,通信,电气自动化专业 转到嵌入式这类人相比于土木生化跳专业转这行相对来说要容易得多。有很多优势。这些专业学过c语言,大学物理,高中物理,理解计算机基础部分,上手容易。具体想转行的,参照我之前楼层写的 怎么从入门开始学,一共6步。具体要转偏软件还是偏硬件,这个具体要看个人,如果说想短期上手挣钱,我建议转偏软,也就是linux,安卓这些。但是这种岁数大会有职业危机,可替代性强。如果说想长期从事嵌入式行业,并且还能静下心学习,不怕辛苦,这种不是三天打鱼 两天晒网 要持之以恒这种,我建议转偏硬件,这种偏硬件在未来可以选择自己创业,也可以选择在不断提高技术后,跳槽到大公司。这种越老越吃香,但是很困难。起码要5-8年 成为大手。具体看个人情况而定。另外大家不要心血来潮去干一件事,一定要深思熟虑后再做决定,要热爱这行 ,你才能学好!如果是土木生化 想转到嵌入式,说实话,我不太建议转,首先大学没怎么接触c语言,单片机这些基础知识,转行很费劲。其次,360行行行出状元,我认为任何行业都能挣钱,但是如果大环境不好,要善于观察,看准什么方面挣钱,抓紧风口。如果说硬要转,我建议报班转偏软件,硬件能把人弄疯的,什么都没有准确答案,程序写对了,电路没设计好,也会出问题。但是偏软件的,没有硬件这些额外因素,相对来说问题小很多。另外刚毕业有条件可以考虑 gwy,部队文职,选调生 这些,不用非干技术不可,理想很丰满 现实很骨感 ,毕竟要挣钱吃饭的。沈阳有900万人口,做我们这行精通的几千人都没有,所以嘛 有铁饭碗的,我建议去。想好自己职业规划,三思而行。最后呢大家可以看看专栏   http://daxprogram.com
投递360集团等公司6个岗位
点赞 评论 收藏
分享
牛客网
牛客企业服务