嵌入式培训
美国上市嵌入式培训机构

400-111-8989

热门课程

嵌入式面试题三道 考一考

  • 时间:2017-10-11
  • 发布:嵌入式培训
  • 来源:企业面试题

今天本文继续为大家分享三道嵌入式开发相关面试题,请大家思考过后,再到下方寻找答案,考验一下自己的嵌入式知识掌握情况。

题一:

中断与异常有什么区别?

题二:

引用与指针有什么区别?

题三:

堆与栈有何区别?

题一答案:

异常:在产生时必须考虑与处理器的时钟同步,实际上异常也称为同步中断。在处理器执行到由于编程失误而导致的错误指令时,或者在执行期间出现特殊情况(如缺页),必须靠内核处理的时候,处理器就会产生一个异常。

所谓中断就是外部硬件产生的一个电信号,从CPU的中断引脚进入,打断当前CPU的运行

所谓异常就是软件运行中发生了一些必须作出处理的事件,CPU自动产生一个陷入来打断当前运行,转入异常处理流程。

题二答案:

a:引用必须初始化,指针不必

b:引用初始化不能改变,指针可以被改变

c:不存在指向空值的引用,但存在指向空值的指针

注:用const限定引用的目的是:用这种形式的引用不能通过引用对目标变量的值进行修改

形式为const类型标识符&引用名=目标变量名

eg:Example(constExample&x)

引用的主要目的:当参数传递的数据量较大时,用引用比用一般变量传递参数的效率和空间占有率较好

题三答案:

eap是堆,Stack是栈;

Stack的空间由操作系统自动分配/释放,Heap上的空间是手动分配/释放;

C中的malloc函数分配的内存空间在堆上,C++对应的是new操作符;

程序在编译期间对变量和函数分配内存都在栈上进行,且程序运行过程中函数调用时参数的传递也在栈上进行。

上一篇:这嵌入式知识三个问题你都知道吗?
下一篇:ARM体系结构可用两种方法存储字数据分别是?

嵌入式面试题三道 考一考

这嵌入式知识三个问题你都知道吗?

嵌入式面试题之什么是预编译?

嵌入式面试题之中断与异常有何区别?

选择城市和中心
贵州省

广西省

海南省