自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

黑面秃头的博客

新手小白上路,出发点是记笔记,若有错误,各路大神还请指出

  • 博客(18)
  • 收藏
  • 关注

原创 嵌入式软件工程师笔试面试题分类汇总——C语言链表之增删改查等等(超详细)

C语言链表1. 基础知识1.1 什么是链表 ?1.2 链表的优点&缺点1.3 复杂度2. 基本操作2.1 链表的结构类型2.2 创建一个节点并初始化2.3 链表的头插法&尾插法2.3.1 尾插法2.3.2 头插法2.4 查找2.4.1 按序号查找节点值2.4.2 按值查找链表节点2.5 按给定序号插入2.6 删除2.6.1 按序号删除节点2.6.2 按值删除节点  由于本人表较懒,加之你如果理解了单链表,那么双链表、循环链表我觉得都不是太大问题,所以本篇博文仅针对单链表进行详细讲解。整理匆

2020-10-09 21:42:24 1134

原创 向上取整、向下取整、四舍五入、int

C语言中小数与整数之间的那点事1. 向上取整1.1 函数解析1.2 举例首先我们需要知道C标准库中是有向上/下取整的函数的,需要引入math.h,但是是否有四舍五入的函数(即round()函数),取决于你的编译器是否支持C99标准!不过不用担心,即使你的编译器不支持,我这里也会提供给你一种方式来解决四舍五入的问题。1. 向上取整1.1 函数解析C语言中向上取整的函数为ceil(),ceil(x)返回的是大于x的最小整数所以对于正数,1.2向上取整为2;对于负数,-1.2向上取整为-1(不会吧不

2020-08-27 11:57:57 27587 2

原创 嵌入式软件工程师笔试面试题分类汇总——ucosII知识点(1)

可剥夺型内核?答:根据优先级可占用当前CPU的使用权一个应用程序为什么一定要使用空闲任务?答:为了让CPU在没有用户任务可执行时有事可做从存储结构上看,任务是如何组成的?答:从存储结构上看,任务由任务控制块、任务堆栈、任务代码三个部分组成。系统通过任务控制块感知和控制任务;任务堆栈主要用于保护断点和恢复断点;任务代码是一个超循环结构,描述了任务的执行过程。在创建一个任务时,函数OSTaskCreate()或OSTaskCreateExt()负责给任务分配任务控制块和任务堆栈,并对他们进行初始化,.

2020-08-19 16:42:46 2938

原创 嵌入式软件工程师笔试面试题分类汇总——内存分布之用户空间(图解)

内存分布1. 知识点补充说明这期的主题是内存分布。不多说,no pic you say j8!1. 知识点补充说明xu’ni

2020-08-15 23:06:01 300

原创 Source Insight安装教程及配色方案

Source Insight安装教程及配色方案1. Source Insight安装教程step1:资源准备step2:step3:step4:2. 配色方案_暗黑1. Source Insight安装教程step1:资源准备链接:https://pan.baidu.com/s/1ewdqdxX44A7YzhI225Q5xA提取码:wtb6这是破解文件,下载后自行解压链接:https://pan.baidu.com/s/1ygctym1QWqWnsbyc4RU5Wg提取码:41io

2020-08-08 10:41:55 1125 3

原创 嵌入式软件工程师笔试面试题分类汇总——字节序(大小端)& 比特序(LSB、MSB)

大小端1.介绍2.图示3.比特序(位序)1.介绍大端(Big-Endian): 数据高字节——>低位地址,数据低字节——>高位地址;小端(Little-Endian): 数据高字节——>高位地址,数据低字节——>高位地址;防止记混了可以只记住小端是高对高,其他的自己可以推出来;或者你可以记住大端模式符合我们的阅读习惯(至于怎么符合,看下图);插一句,小端模式其实是符合我们的逻辑思维,低字节放在低地址,高字节放在高地址(emmm…怕记混了当我没说>_<

2020-08-06 00:23:31 1160

原创 嵌入式软件工程师笔试面试题分类汇总——反转(位反转、字符串反转、整数反转、链表反转)[图解!!!]

反转1.位反转2.字符串反转3.整数反转4.链表反转想要我的财宝吗?想要的话可以全部给你,去找吧!我把所有反转都放在了那里!(本文档仅涉及最基本的反转,如有需要比如从第几位到第几位进行反转的,抱歉,出门左拐>_<)1.位反转题目如图:不多bb,直接上代码方法一:(该方法适合任意个数bit的反转)unsigned char bit_reverse(unsigned char c){ unsigned char buf = 0; int bit = 8; while(bit)

2020-08-03 22:03:49 431

原创 嵌入式软件工程师笔试面试题分类汇总——中断服务函数

中断服务函数(ISR)1.中断服务函数4大注意点2.中断和调用子程序的那点破事2.1联系2.2区别3.常见题型  今天来学习记录下中断服务函数(ISR)。关于中断,其实大家或多或少都会了解过,那么,在笔试&面试中,关于中断服务子函数,我们又需要知道那些知识点?1.中断服务函数4大注意点1. 中断服务函数不能有返回值;2. 中断服务函数不能传入参数;3. 中断服务函数要短小精悍;4. 中断服务函数中不能使用printf等glibc函数,会带来重入性和性能问题;解析:首先,中断源连接到硬

2020-07-17 12:09:13 2310

原创 嵌入式软件工程师笔试面试题分类汇总——volatile

vloatile超详细!!!单纯的C程序员肯能会很少用到volatile关键字,但是如果说想从事嵌入式的工作,如果不懂得使用volatile,那就基本和offer说拜拜了。本讲内容将详细讲述volatile,为什么要用,什么时候用,有什么注意点…安排!答应我,硬着头皮也要看完!真的很详细!!!问题引入int obj = 10;int a = 0;int b = 0;a = obj;sleep(100);b = obj;//在上述程序中,编译器在编译时发现obj没有被当成左值使用,//

2020-07-08 21:20:47 487

原创 嵌入式软件工程师笔试面试题分类汇总——static

static- 作用:修饰普通变量,修改变量的存储区域和生命周期,使变量存储在静态区,在main函数运行前就分配了空间,如果有初值就用初值初始化它,如果没有初始值系统用,默认值初始化它;修饰普通函数,仅在定义该函数的文件内才能使用。在多人开发项目时,为了防止与他人命名的函数重名,可以将函数定位为static;修饰成员变量,修饰成员变量使所有的对象只保存一个该变量,而且不需要生成对象就可以访问该成员;修饰成员函数,修饰成员变量使得不需要生成对象就可以访问该函数,但是在static函数内不可以访问非

2020-07-06 15:12:23 264

原创 嵌入式软件工程师笔试面试题分类汇总——const

const一、作用1. 修饰变量,表示该变量不可改变2. 修饰指针,分为指针常量和指向常量的指针 1)指针常量(常指针):char a[] = "hello";char* const p1 = a;*p1 = 'w'; //OKp1 = NULL; //Error p1不能做左值p1 = "world"; //Errorconst与指针变量相邻,修饰的是指针p1,所以指针指向的地址(p1)不能修改[一定要在定义的时候给定初值,指向一个确定存在的地方],但地址中的值(即指针指

2020-07-04 11:08:45 341

原创 嵌入式软件工程师笔试面试题分类汇总——strcmp函数

strcmp函数- 简介:用法:#include <string.h>原型:extern int strcmp(const char *s1,const char * s2);功能:比较两个字符串s1和s2的大小描述:当s1<s2时,返回值<0;当s1>s2时,返回值>0;当s1=s2时,返回值=0;规则:1.两个字符串自左向右 逐个字符比较(按ASCII码的值相比较),知道出现不同的字符或遇到‘\0’为止;2.当两个字符串不相等

2020-07-03 13:00:12 281

原创 嵌入式软件工程师笔试面试题分类汇总——转义字符

转义字符- 题型1char c[] = "\\\"A100\"\\";printf("%d\t %d\t %s\n",sizeof(c),strlen(c),c);//输出 :9 8 \"A100"\考点:1.strlen函数的结果不包含\0,sizeof的结果包含\0;2.注意哪些是转义字符,以及转义字符所占的字节数;- 题型2char a = '\82';char c = 'xyz';printf("%c\n %c\n", a,c);//输出:2 z有一个‘

2020-07-03 09:58:28 406

原创 嵌入式软件工程师笔试面试题分类汇总——宏、inline

宏宏定义可以实现类似于函数的功能,但它并不是函数。宏定义中括号中的“参数”也不是真正的参数,在宏展开时对“参数”进行的是一对一的替换预处理指令不是语句,行尾不要加分号- 题型1写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。#define MIN(X,Y) ((X)>(Y)?(Y):(X))//一般将参数加括号,避免带入后展开破坏原有结构已知一个数组table,用一个宏定义,求出数组的元素个数#define NTBL (sizeof(table)/sizeof

2020-07-02 13:19:39 327

原创 [C]链栈的基本知识点、基操(初始化、入栈、出栈、遍历等)图文结合!!!!

链栈(有图有代码!!!!!)基本知识点链栈:栈的链式存储结构,简称链栈(栈的顺序存储结构简称顺序栈)空栈:对于链栈来说,空栈其实就是top = NULL的时候对比顺序栈与链栈:两者时间复杂度一样,均为O(1);对于空间性能,顺序栈需要事先确定一个固定长度,可能会存在空间浪费问题,但它的优势是存取时定位方便,而链栈则要求每个元素都有指针域,这同时也增加了一些内存开销,但对于栈的长度无限制;如果栈的使用过程中元素变化不可预料,最好使用链栈,反之,如果他的变化在可控范围内,建议使用顺序栈基

2020-06-10 14:42:11 1543

原创 重建二叉树过程详解

已知某二叉树的前序遍历和中序遍历的结果,请重构出该二叉树(步骤详解,代码后补)前序遍历序列{1,2,4,7,3,5,6,8}中序遍历序列{4,7,2,1,5,3,8,6}step1首先需要知道前中后序的遍历方式:前序遍历:根左右中序遍历:左根右后序遍历:左右根注意观察“根节点”的位置针对于本题,前序+中序,先看前序,第一个元素“1”即为根节点,然后在中序遍历中标记出“1”所在位置step2在中序遍历中确认的根节点位置,则左右两边分别为左子树和右子树step3目光回到前序遍历,

2020-06-01 23:03:22 2033 4

原创 CodeBlocks注释中下划线如何取消

使用CodeBlocks作为IDE的猿友们经常会在编辑注释时遇到烦人的红色下划线,如下图禁用CodeBlocks中“拼写检测”插件就能摆脱烦恼step1:step2:操作完成后即可即,如果任然显示,关闭这个文件,重新打开就完事了。效果如图:...

2020-06-01 13:45:18 2635 1

原创 嵌入式软件工程师笔试面试题分类汇总——sizeof()、strlen()代码举例

sizeof()sizeof()求的是占据内存的大小(此处我们假设在64位系统上)strlen()strlen()求的是实际长度#include <stdio.h>int main(){ char str[] = ''hello"; char *p = "hello"; printf(“”%d\n%d\n%d\n , sizeof(str) , sizeof(p) , strlen(str));}...

2020-05-29 13:33:34 385

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除