嵌入式工程师考察主要蕴含:C/C++,处理器的架构,操作系统(linux或嵌入式实时操作系统),常见硬件接口协议/总线,文件存储系统等几方面
文章目录
- 1)C/C++
-
- static作用,变量加入static以后在内存中存储位置的变化。
- volatile作用
- C++为什么有指针还要引用,为什么不和JAVA一样抛弃指针
- delete和delete[]的区别
- 虚函数是用来干嘛的?虚函数机制怎么实现的?虚表指针在内存中的存放位置?
- C++多态怎么理解?C++有哪些多态的典型例子?
- 叙述程序编译都包含哪些阶段,每个阶段干了什么?
- CMake是如何包含文件目录的
- 全局变量和局部变量在什么地方?堆栈如何申请资源?
- C语言编译后的内存分布
- 我连续调用同一个函数两次,他的局部变量初始化结果是否会一致?(函数调用的过程)
- 你说静态局部变量存储在静态区,那么静态区的创建和消失是在什么时候?
- 我在windows里面运行了多个进程,其中一个进程执行完了,他的静态区会如何处理?(多进程的内存管理问题)
- 静态局部变量与局部变量的区别?为什么局部变量未定义时,每次初始化的结果是不确定的?是个真随机数还是个伪随机数?
- 嵌入式中栈的工作机制是什么?
- struct字节对齐了解么?
- 容器了解吗?vector实现的机制是怎么样的?
- 迭代器有了解吗?讲解一下你的理解
- 内存分配函数了解么?如果系统中只有10K内存,而我要分配12K,能分配成功吗?如果能,那么将分配到的区域用memset进行初始化,会成功吗?
- 2)处理器架构
- 3)操作系统
- 4)常见硬件接口协议/总线
1)C/C++
static作用,变量加入static以后在内存中存储位置的变化。
static作用及变量加入static后在内存中存储位置的变化
static的作用
在C/C++等编程语言中,static
关键字有着多重作用,主要根据它被应用到的上下文环境(如全局变量、局部变量、函数等)而有所不同。但总体来说,static
主要提供了两个核心功能:
-
隐藏:当
static
用于全局变量时,它限制了该变量的作用域仅在其被声明的文件内部,避免了不同文件中同名全局变量的冲突,实现了对变量的隐藏。 -
持久性:无论
static
用于局部变