天天看点

从大厂面试官那里整理出的100道嵌入式面试必考题,你真的会写helloworld吗?每天只需3分钟,就能为未来的自己避坑

作者:良许Linux

从大厂面试官那里整理出的100道嵌入式面试必考题,你真的会写hello world吗?每天只需3分钟,就能为未来的自己避坑。

写hello world是入门嵌入式开发必须掌握的基本技能,但对于初学者来说,可能并不清楚其中的细节。如果你不清楚这些基础知识,那么这些题目就会变成送命题。下面这段代码中的变量和字符串hello world分别存储在内存的哪个区域?

首先,charch0是一个局部变量,它存储在栈区。由于是一个数组,所以需要占用多个内存空间,每个元素占用4个字节,共8个字节。栈是一种自动管理内存的数据结构,可以自动分配和释放内存,通常用于存储局部变量。

接下来看ptr1,这是一个全局变量,存储在数据段的全局区。由于刚声明时没有进行初始化,所以保存在bss段。这里的hello world是一个字符串常量,保存在产区程序运行期间一直保持不变。指针ptr1指向常量区中hello world的首地址。

再来看ptr2,也是一个局部变量,同样存储在栈上。这里使用malloc在堆区申请了一段16个字节的空间,并将首地址赋值给ptr2。

最后,使用strcpy将字符串hello world复制到堆中刚刚申请的空间中。使用malloc申请内存空间后,一定要记得使用free释放这段空间,否则会造成内存泄漏。

内存分为堆、栈、全局区和常量区四个区域,是面试官非常喜欢考察的知识点,在工作中也非常常用。大家一定要非常清楚这些概念,否则就不算真正学会这门语言了。

根据岗位需求,我也整理了一份详细的文档,图文并茂,易懂易记。有了这份文档,可以帮助大家在秋招中拿到更心仪的offer。

以上就是本次视频的全部内容,喜欢的同学记得点赞、评论和转发。

从大厂面试官那里整理出的100道嵌入式面试必考题,你真的会写helloworld吗?每天只需3分钟,就能为未来的自己避坑
从大厂面试官那里整理出的100道嵌入式面试必考题,你真的会写helloworld吗?每天只需3分钟,就能为未来的自己避坑
从大厂面试官那里整理出的100道嵌入式面试必考题,你真的会写helloworld吗?每天只需3分钟,就能为未来的自己避坑
从大厂面试官那里整理出的100道嵌入式面试必考题,你真的会写helloworld吗?每天只需3分钟,就能为未来的自己避坑

继续阅读