嵌入式软件设计(数据段——最容易面试被问倒的问题)
Posted 费晓行
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式软件设计(数据段——最容易面试被问倒的问题)相关的知识,希望对你有一定的参考价值。
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
和上位机程序不同,一般的嵌入式程序都是需要自己构建Makefile,自己构建linkfile的。很多同学可能有不同意见,他们会说,自己也做嵌入式但是却没有遇到过类似的场合。说实话,那是因为是IDE替我们做了。
在嵌入式中,不管最后烧入到flash的是什么文件,一般都会包括数据段和代码段。代码段顾名思义,就是不同function、不同class编译而成的汇编指令。那么数据段呢,我们真的了解吗?
1、全局未初始化段
在数据段中,这部分一般被命名为bss段。上电后需要进行初始化为0的处理工作。实际代码编写一般是这样的,
int data;
2、全局初始化段
和未初始化段不同,全局数据还有一种情况,那就是初始化段,这一部分也是需要注意的。还是拿data举例,它可能是这样的,
int data = 10;
3、只读数据段
只读数据段多出现在字符串数据中,可能出现在全局变量中,也可能出现在函数的局部变量中。这里,我们仅仅以
以上是关于嵌入式软件设计(数据段——最容易面试被问倒的问题)的主要内容,如果未能解决你的问题,请参考以下文章
面试官:Lambda 表达式中的 forEach 如何提前终止?这次被问倒了!
面试官:Lambda 表达式中的 forEach 如何提前终止?这次被问倒了!