做网站容易还是做小程序容易,网页传奇游戏排行榜比亚迪,wordpress论坛主题,公司网站建设开发1.FreeRTOS使用#xff0c;是自己移植的吗#xff0c;移植过程中设置了多少个任务#xff1f;
答#xff1a;是自己移植的#xff0c;从官网下载的包根据手册移植的。
主要涉及以下几个任务#xff1a; 主任务#xff1a;负责系统初始化和创建其他任务。创建队列任务点…1.FreeRTOS使用是自己移植的吗移植过程中设置了多少个任务
答是自己移植的从官网下载的包根据手册移植的。
主要涉及以下几个任务 主任务负责系统初始化和创建其他任务。创建队列任务点灯任务点亮LED任务。通信任务处理网络通信或串口通信。用户界面任务更新显示和处理用户输入。数据处理任务执行数据分析或控制算法。 2.如何进入中断
答①先理解中断向量表
②然后进行中断初始化
③使能全局中断
④发生中断事件触发中断 3.指针和引用的区别
答①指针有固定的空间大小在32位系统中是4字节引用是原始变量的一个别名大小是原变量的大小。指针需要解引用才可以对指向的变量进行操作。而对引用的修改会直接改变引用所指向的变量。
②指针可以有const指针但没有const引1用。 指针有多级指针引用不存在多级引用。在使用指针过程中可以改变其指向的对象但引用一旦被初始化就只能是一个对象的引用不能改变。
③引1用声明时必须初始化为另一变量。指针声明和初始化可以分开允许只声明不初始化使用时再指向具体变量指针可以指向空值但不存在指向空值的引用引用必须初始化为具体变量的别名 4.普通局部变量、普通全局变量、静态局部变量、静态全局变量的区别? 答普通局部变量:存在栈区如果不初始化变量内容随机只在定义所在的复合语句中有效复合语句结束变量空间释放; 普通全局变量:存放在全局区若不初始话值为0进程结束空间才会被释放能被当前源文件或其他源文件使用只是其他源文件使用的时候记得使用 extern 修饰;静态局部变量:存在全局区、不初始化内容为0、整个进程结束空间才被释放只能在定义所在的复合语句中有效; 静态全局变量:存在全局区、不初始化内容为0、整个进程结束空间被释放只能被当前源文件使用。 特性指针 引用声明符号*初始化可选必须重新绑定可以不可以空值可以为 NULL不可以内存管理需要手动管理由绑定变量生命周期管理算术运算可以不可以 5.TCP和UDP区别
特性TCPUDP连接性面向连接无连接可靠性可靠传输确保数据完整和顺序不可靠传输数据可能丢失、重复或乱序数据传输方式面向流面向报文速度较慢提供可靠性保证较快不保证可靠性流量控制和拥塞控制有流量控制和拥塞控制无流量控制和拥塞控制头部开销较大20 字节较小8 字节使用场景文件传输、电子邮件、Web 浏览视频会议、在线游戏、直播、DNS 查询 6.堆和栈的区别
特性堆Heap栈Stack内存分配动态分布静态分配或自动分配管理方式程序员显式管理编译器自动管理速度较慢非常快内存碎片容易产生不容易产生生命周期程序员控制作用域决定大小通常较大受系统可用内存限制通常较小受操作系统预设限制适用场景动态数据结构链表、树、图等函数调用、局部变量、临时变量内存泄漏容易发生不容易发生 7.链表和数组的区别 答①数组内存连续链表内存不连续。 ②数组访问速度比链表快。 ③链表增加删除操作比数组快。 8.请说一下内存的栈区、静态区、堆区区别? 答①栈区:存放局部变量在执行函数的时候局部变量的存储单元会在栈上创建函数执行完自动释放。 ②静态区:主要存放 static 静态变量、全局变量、常量这些内存在编译的时候就已经分配好了内存声明周期是整个程序的开始到结束。 ③堆区:堆区由程序员手动申请与释放程序在运行的时候使用内存分配函数(如 malloc)来申请使用完后再使用(如 free)来释放堆中被程序申请使用的内存在程序主动释放前将一直有效。