IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 嵌入式面试总结 -> 正文阅读

[C++知识库]嵌入式面试总结

1:堆和栈的区别

? ? ? ? ①栈的空间由系统自动分配或释放,堆的空间手动分配或释放

? ? ? ? ②栈的空间有限,堆上有很大的自由存储空间,malloc分配的空间在堆上,使用完后需要释放

2:static关键词的作用

①修饰局部变量,将其生命周期改为与全局变量相同,作用域不变

②修饰全局变量时,?当一个源程序由多个源文件组成时,将其作用域从整个源程序改为该源文件

③修饰函数时,表明该函数作用域为该文件内?

3:volatile关键字的作用

①与const关键词对立,表示“可变的”,修饰变量时表明该变量需要从内存单元中读取,不能直接从寄存器中拷贝,

②常用于并行设备的硬件寄存器,中断服务子程序访问到的变量,多线程之间被几个任务共享变量

4:进程和线程的区别

①进程是系统资源分配的最小单位,线程是程序执行的最小单位

②进程拥有自己独立的地址空间,每次启动一个进程系统会为它分配数据段、代码段、堆栈段,而线程与进程共享相同资源,仅仅拥有自己的局部变量(栈),共享全局变量和堆等,因此cpu开销线程明显小于进程

③线程之间的通信很明显,但要注意互斥和同步,进程间通信用到IPC,主要有FIFO,socket,管道pipe,信号量

④多进程程序不容易崩溃,多线程程序会因为某一线程掉线而崩溃

5:实现strcpy函数

char *strcpy(char *strDest, const char *strSrc)
{
    if (!(strDest && strSrc))
        return NULL;
    char *ret = strDest;
    while ((*strDest++ = *strSrc++)!='\0');
    return ret;
}

6:引用和指针的区别


(1). 指针是一个实体,而引用仅是个别名;?

(2). 引用使用时无需解引用(*),指针需要解引用;

(3). 引用只能在定义时被初始化一次,之后不可变;指针可变;

(4). 引用没有 const,指针有 const,const 的指针不可变;

(5). 引用不能为空,指针可以为空;

(6). “sizeof 引用”得到的是所指向的变量(对象)的大小,而“sizeof指针”得到的是指针本身(所指向的变量或对象的地址)的大小;

(7). 指针和引用的自增(++)运算意义不一样;

7:为什么要字节对齐

8:C和C++的区别

9:C语言的编译过程

10:linux驱动相关知识

11:嵌入式硬件协议

I2C,SPI,GPIO,

12:自旋锁和互斥锁,读写锁

自旋锁可以在中断中使用,互斥锁会引起阻塞

13:系统调用有哪些,执行过程是怎样的?

14:大小端问题,0x12345678在小端模式存储方式是?

78 56 34 12

15:信号④是用来干嘛的?

用来同步和互斥,如果初始值为0,则用于同步,如果初始值非0,则用于互斥

互斥是死锁的必要条件之一

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-24 07:46:15  更:2021-11-24 07:47:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:48:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码