自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

转载 学习编程该如何记笔记(摘自简书、博客)

回首自己做了很多笔记在学习数构和C++上,现在思考下应不应该这样记笔记,是不是有什么需要修改的做法。------总纲:------记你觉得有必要的东西随时间记录:1、概念理解有偏差的2、细节没有处理好的TIPS3、启发性的idea4、总结积累到一定的笔记量后要整理------分类:------1、需再次强调的内容2、已经吸收的内容3、大致了解但要实际操作存在一定困难的内容...

2020-04-06 11:41:17 2089

原创 单片机Ds18b20温度传感器的学习(附踩雷清单)

主函数温度传感器可记录温度-55~125摄氏度#include"reg52.h"#include"temp.h"//这个头文件要写上,否则会报错!!!typedef unsigned int u16;typedef unsigned char u8;sbit LSA=P2^2;//数码管用74LS138译码器来控制,所以有了这些东西sbit LSB=P2^3;sbit LSC=P2...

2020-04-30 22:27:07 1093

原创 数据结构与算法学习笔记(第三章 栈与队列)(1)栈

栈方便取阅,给个目录!栈顺序栈top指针指栈顶元素再往后一个位置(只操作该指针)base指针指栈底(不操作该指针)一些重要操作上溢下溢结构算法链栈结点结构表示:算法递归定义分治法求解递归算法的一般形式函数调用过程举例:求解阶乘n!的过程 (实参和返回地址均存在系统栈里)递归函数调用的实现优点与缺点单项递归)顺序栈top指针指栈顶元素再往后一个位置(只操作该指针)为嘛?方便操作!b...

2020-04-29 01:00:23 378 2

原创 EssentialC++第三章课后习题+踩雷清单

先总结本章所学的知识。内容多,我给个目录第三章总结习题3-13-23-33-4第三章总结一开始学习了指针算术运算,知道了指针可以用下标运算符(如array[2])来取出其指向的元素,或者*(array+2)来取出其指向的元素,array++,*array++,都是指针的算术运算。然后就是了解泛型指针,泛型指针的定义是针对于容器的,必须是容器的定义格式::iterator指针名,如vec...

2020-04-27 22:48:18 551

转载 C++变量和对象的区别联系

对象和变量这两个概念莫要搞乱,颈是颈,椎是椎,虽然两者都对应着一块内存,但是从不同的角度去理解内存就会产生不同的意义。变量:所谓变量就是一种定义,通过定义编译器将会开辟一段空间,并将这段内存空间和这个变量的名字捆绑在一起。从这个意思去理解,其实说白了:变量名就是内存在代码中可视化的一个符号。也就是说,如inta,a只是内存中某段地址在代码中可视化的一个符号,a本身作为符号并不占用空间,占用空...

2020-04-27 14:40:01 380

原创 Essential C++学习记录&笔记整理20(使用Map、Set、如何使用Iterator Inserter和iostream Iterator)

使用MapMap的作用,体现在你想查询某个字眼(单词,或者从句子里切分出来的某一子字符串这样的东西等)的出现次数的时候(并加以分析时)可以使用。要包含头文件#include<map>,格式一般为map<key,value>前者是字眼,后者为该字眼出现次数。用法举例:#include<map>#include<string>map<s...

2020-04-27 10:58:12 208

原创 Essential C++学习记录&笔记整理19(使用泛型算法、如何设计一个泛型算法)

使用泛型算法使用泛型算法这一节都是介绍的有什么泛型算法,这个用搜索引擎查一查资料,然后书后面也有相应的资料,查阅一下即可。注意使用泛型算法要包含头文件#include<algorithm>如何设计一个泛型算法//目的:找出小于/大于某指定值的元素的值。#include<iostream>#include<vector>#include<a...

2020-04-26 17:35:50 166

原创 记第二次实践——数据结构 线性表实践(图书管理系统0.8)剖析程序(避坑参考)

程序写好了,先分析一下debug过程:采取该cout形式时,只在最后一行“<<”中最后加;否则会出现以下报错信息(节选)。main.cpp|58|error: expected primary-expression before ‘<<’ token|void AddLNode(Linklist &,int);//....AddLNode(BkL...

2020-04-25 11:44:37 326

原创 单片机IIC总线和EEPROM的学习(包括建立头文件及头文件附属的.c文件并将其囊入项目(组)的过程)

首先在编程的语法上存在一些问题,记录一下#ifndef __I2C_H_ //是ifndef不是ifdef!!!!!记下!是ifndef不是ifdef!!!!!别写错了!!!写错的话,报错信息如下(我只贴了一部分,剩下一部分跟这个差不多,你写错了ifndef的话其他文件(如.c文件)会不认你这个自定义头文件。#include"reg51.h"//不包含该文件,你的sbit就会没法...

2020-04-23 16:17:04 871

原创 Essential C++学习记录&笔记整理18(所有容器的共同操作、使用顺序性容器)

所有容器的共同操作所有容器类及string类的共同操作==和!=运算符,返回true或false=运算符,将某个容器复制给另一个容器empty()会在容器无任何元素时返回true,否则返回falsesize()返回容器内目前持有的元素个数clear()删除容器的所有元素举个代码例子:void comp(vector<int>&v1,vector<int...

2020-04-22 21:08:06 193

原创 Essential C++学习记录&笔记整理17(了解Iterator(泛型指针))

这节第一次看自闭了 ,又看了一遍,照书上代码敲了敲补充了下细节,才算明白。了解Iterator(泛型指针)注:书上的代码在拼合的时候,有些细节没给出,也没有提醒,需要你自己悟出来或者搜索一下。直接以一份代码来说明这一节#include<iostream>#include<vector>#include<list>//这个头文件得写,因为你用到了lis...

2020-04-21 22:32:25 286 1

原创 Essential C++学习记录&笔记整理16(指针的算术运算)

终于来到了第三章,然而这一章第一二节看了就很让人劝退。。。很多细节书里没提导致我必须猜测或搜索才能让书里的代码运行起来。指针的算术运算所谓指针的算术运算,举个例子,可以是*(array+2);假设array所存储的元素类型为int,array+2就是array的地址(也是array首元素的地址)+array所存储的元素类型所占大小*2。换句话说,array所存储元素类型是int型,首元素地...

2020-04-21 21:41:57 176

原创 记第一次实践——数据结构 线性表实践(稀疏多项式)剖析程序(避坑参考)

今天试手稀疏多项式程序设计。做了3、4个小时吧,debug时间比写代码时间长,遇到了一些问题,目前解决了。算法的健壮性也在debug中不断完善。不多说,直接上代码,解说代码!typedef struct plynml{ int expr; float coef;}Ply;typedef struct node{ Ply data; struct node...

2020-04-20 18:37:53 211

原创 数据结构与算法学习笔记(第二章 线性表)

记一些第一次学习的时候不知道或者理解有偏差的东西吧关于顺序表元素存储位置的计算先举个例子:如果每个元素占用8个单元,ai的存储位置是2000单元,则ai+1的存储位置是:?答案:2008单元。(别理解错了,让你求的是存储位置不是下标!!!)抛砖引玉:所有数据元素的存储位置均可由第一个元素的存储位置得到(“由第i个元素的存储位置得到”这里推得的):LOC(ai)=LOC(a1)+(i-1...

2020-04-19 18:33:00 275

原创 单链表(配合数构第二章的笔记使用)

单链表头指针用来记录链表第一个元素的地址,链表名可以取头指针名头指针为空,证明链表是空表结点:数据元素的存储映像数据域指针域你可以选择把箭头理解成指向元素的地址(因为你也不知道那个地址具体是什么)其指针的定义为嵌套定义(定义的类型为所在结构体类型)Lnode:普通的(结点)结构体类型变量,可以Lnode a;或者Lnode *a。a.next或者a.data来操作结点的两个域*...

2020-04-19 18:31:05 205

原创 Essential C++第二章练习(又一次干货+注意事项的总结!)(2)

inline bool check_validity(int pos){ return (pos<=0||pos>64)?false:true;}//这是一个很简洁的代码,值得借鉴,记下!这里的异常处理做的很简洁,很清晰,值得借鉴const vector<int>* pentagonal_series(int pos){ static vecto...

2020-04-17 17:16:23 218

转载 函数指针和函数指针数组及其应用

讲函数指针和函数指针数组的文章,,对我很有帮助函数指针和函数指针数组及其应用

2020-04-17 09:06:31 100

原创 Essential C++第二章练习(又一次干货+注意事项的总结!)(1)

";“别写成了”:",这是个隐晦的错误,你必须足够眼尖才能查明,所以在写程序的时候留意!不要总犯低级错误!请看这个bool类型的功能为判断的自定义函数,有需要注意的东西bool iscontinue(){ int choose; //注意这里定义成int变量, //因为如果变量是bool类型,用户如果输入了非0的数值, //不管正数负数小数,都会认为cho...

2020-04-16 21:42:32 670 1

原创 模电负反馈分析总结

基于f求Au①先观察组态,求反馈系数f,再求Af②标出对应的电压和电流,反馈量和输出量③利用“虚短”和“虚断”表示出对应的反馈系数和电压电流④求出(电压)放大倍数A(uu)f...

2020-04-16 10:06:45 1595 4

原创 Essential C++学习记录&笔记整理15(设定头文件)

设定头文件为什么设定头文件?假如为了不用分别在五个文件中声明seq_elem(),我们把函数声明可以放在头文件中,然后每个程序代码文件(.cpp)文件内#include" "头文件来包含这些函数声明,本意还是为了方便调用一些(自定义)函数,然后也方便修改函数的参表或者返回类型,包含的头文件会自动更新掉。头文件的扩展名,习惯上是.h。标准库没有拓展名!举个例子来说明一下头文件的使用//...

2020-04-15 09:53:46 226

原创 Essential C++学习记录&笔记整理14(函数指针带来更大的弹性)

这一节讲函数指针,学C的时候很难理解,这次要攻克过去!函数指针为什么需要?答:因为我想通过一个指针,指向不同的几个函数,更方便我在函数内或者是主函数内调用函数,不必在写具体什么函数了,省工作量函数指针形式很复杂,慎用。下面举一个例子来说明这个东西。const vector<int>* (*seq_ptr)(int);这是一个函数指针,seq_ptr被定义成函数指针,他可...

2020-04-15 09:53:35 252 1

原创 C++中关于const,&修饰变量或形参的思考

这个需要单独开一个博客来说明,因为它在我第一次向C++“宣战”的时候就把我卡住了。我的问题:形参const vector<int> &vec这是什么意思,都const了怎么还要引用,能怎么修改。。。。求解释,谢谢大佬的解释:用引用(&)是为了避免拷贝,用const是避免修改,但是const不代表不能遍历这个vector,读还是可以的const变量保证任何值...

2020-04-14 23:45:40 338

原创 Essential C++学习记录&笔记整理13(提供重载函数,定义并使用模板(template)函数)

为什么俩搁一块呢,就是方便叙述,一层扣一层的知识。提供重载函数为什么要用重载函数?①将一组实现代码不同但工作内容相似的函数加以重载,可以让函数的用户更容易更灵活使用这些函数,如果没有重载机制,我们就得为每个函数提供不同的名称。解释一下,就是我想写一个函数,我想让这个函数以不同的参数表(或者说我想提供不同的实参表来调用一个函数),我有这个需求,所以我要用重载函数,来减轻我的工作量,让我不再...

2020-04-14 21:28:08 174

原创 Essential C++学习记录&笔记整理12(声明inline函数)

声明inline函数为什么需要inline函数?①防止程序堆栈因频繁调用小体量函数而被消耗掉大量内存甚至爆掉,因而影响程序运行性能。内联函数(inline函数)选择把函数的调用操作改为展开该函数的函数体。②如①所说,inline函数提高了程序的运行性能(在调用的函数还是函数体不复杂的函数的情况下)函数指定为inline函数,只是对编译器发出了请求,编译器自己决定是否让inline函数发挥...

2020-04-14 19:39:42 126

转载 关于C++游戏开发工程师。我思考到的

知乎大佬们的回答原链接1,前端的核心技术不是你说的什么cocos,也不是什么Unity,手游没兴起的时候,这两个玩意儿还是腹中的婴儿。2,我认为的游戏前端核心技术:内存,CPU,渲染,异步线程,协程,网络。这些都是大块儿,不在实际中历练,是没法有自己的理解的。3,就游戏前端来说,想做好,C++必须有深度,你看的那些书很好,特别是作为一个在校学生来说,挺不错的,当然不知道你理解的深度如何。不过...

2020-04-13 08:21:37 542

原创 Essential C++学习记录&笔记整理11(使用局部静态对象)

使用局部静态对象用处之一是我们想在计算上省事,已经计算过的就不要再重新计算一遍了。在此我说明一点,file scope对象会打乱不同函数间的独立性,使他们难以理解,最好别老用他,虽然file scope对象不会在函数结束后被扔了。那我想怎么保留对象的值(如果对象是个数组,就更得考虑了)所以,咱们得使用局部静态对象看个例子const vector<int>* fibon_...

2020-04-12 08:22:49 143

原创 Essential C++学习记录&笔记整理10(提供默认参数值)

提供默认参数值选择以“参数传递”作为函数间的沟通方式,为什么?①如果过度依赖定义于file scope内的对象,就比较难以在其他环境中重用并难以修改②难以了解该函数对象的工作逻辑总之就是很麻烦,你最好别定义在file scope内。为什么要提供默认参数值?①选择提供某些信息(比如调试信息),有人想看到或指定其输出文件。有人不想看到或操作我们可以给全部或部分参数设定默认值如void...

2020-04-12 08:02:12 159

原创 Essential C++学习记录&笔记整理9(调用函数——引用,作用域及范围,动态内存管理new和delete)

这一节比较抽象,我是读了两遍才基本掌握的,写个博客再消化消化吧!调用函数参数的传递方式:传值(by value)和传址(by reference)调试的时候,不光可以用debugger调试,还可以选择加上打印语句(或往文件里输出的语句)这种实际的方法,来跟踪控制流程的逻辑并显示对象的状态。传值的对象,默认情形下其值会被复制一份,原对象也就产生了副本,这个副本和原对象之间,没有任何关系,你...

2020-04-11 23:55:13 140

原创 Essential C++学习记录&笔记整理8(如何编写函数)

Now,let‘s go on,to conquer the C++!This is new chapter,chapter 2.首先,你为什么要编写自定义函数?以一连串函数调用操作,可以让程序能被读明白我们可以在不同的程序中调用这些函数可以更容易的将工作分配给协作开发团队如何编写函数每一个自定义函数必须定义以下四个部分返回类型,就是你想返回什么类型的变量你就些什么返回类型即可...

2020-04-10 22:14:44 114

原创 数字电子技术——第一章习题令人咋舌的坑,值得逻辑代数小白来看。

A+

2020-04-10 14:49:29 1793

原创 单片机4*4矩阵按键控制数码管显示实验记录

关于实验内容1void matrixkey(){ P3=smgwei[3]; P2=smgduan[1]; MTX_KEY=0x0f; if(MTX_KEY!=0x0f) { delay(100);//按键消抖 if(MTX_KEY!=0x0f) { MTX_KEY=0x0f; switch(MTX_KEY) { case 0x0e: keyv...

2020-04-09 23:37:09 3343 2

原创 单片机应用技术的学习(定时器/计数器的工作原理及应用)

定时器/计数器的工作原理及应用定时器/计数器是增1计数器定时器/计数器T0、T1有四种工作方式(方式0123),由TMOD选择,TCON控制启停+显示状态计数器的起始计数是从初值开始。单片机复位时计数器的初值为0,也可用指令给计数器装入一个新的初值。TMOD:定计器工作方式寄存器8位,高4位控制T1,第四位控制T0。GATE:门控位。GATE=0是由控制位TR0/TR1来控制定时器...

2020-04-08 19:47:23 1053

原创 单片机应用技术的学习(中断系统的工作原理及应用)

中断系统的工作原理及应用为嘛要学习中断技术因为如果单片机没有中断系统,单片机无论是否有服务请求都会去查询,这就很浪费时间了,有了中断技术就消除了查询方式中的等待现象,大大提高了单片机的实时性和工作效率负跳变就是下降沿的意思定时器/计数器T1从初值开始每次递增1来计数当AT89S51复位后,TCON被清零,5个中断源的中断请求...

2020-04-07 23:25:34 1443

原创 Essential C++第一章练习(干货很多,可让小白耳目一新)

object n.对象(在C++中)string类型的字符串,求长不可以用cstring头文件里的strlen(),而是要用变量名.length()!!!变量名.size()也可以!!!然后.length()或者.size()这个函数返回一个整型值(string类型字符串的长度)由于vector是标准库,而数组则是内置类型。所以如果你追求程序的执行效率的话那就用数组吧。可确定数组元素个数...

2020-04-06 19:26:15 386

转载 随笔-学习编程有没有必要做笔记?如何做笔记?

前言对于刚刚学习编程或者已经学习了编程的朋友,难免会产生该不该做笔记的想法。是做好?还是多练习几遍比较好?下面将个人想法和大家分享一下,希望给正在迷茫的你能提供一点帮助问题1.学编程有没有必要做笔记?2.我该记哪些内容?3.如何去做笔记才高效?正文问:学编程有没有必要做笔记?答:十分肯定,一定要做!作为一名软件开发人员,你的职业生涯中不可能只掌握一门编程语言或者技能,技能单一迟早...

2020-04-06 11:14:45 443

原创 Essential C++学习记录&笔记整理7(文件的读写)

到了比较难理解的一节了,加油啃!文件的读写

2020-04-05 20:02:17 161

原创 Essential C++学习记录&笔记整理6(指针带来弹性)

理解Array和Vector后,我们来到了关于指针这一部分的内容指针带来弹性1.指针指针主要做两件事情①可以增加程序本身的弹性②增加了直接操作对象时所没有的复杂度通常,指针具有以下形式:type_of_object_pointed+_to * name_of_pointer_object指针内含特定类型对象的内存地址,在定义某个特定类型的指针时,必须在类型名称之后加上*...

2020-04-05 11:55:21 187

原创 Essential C++学习记录&笔记整理5(如何运用Array和Vector)

说实话从这节开始就和C产生了隔阂了,很多知识都是新知识了,不好理解,尤其是这一节,我读了两遍,总算明白了些东西吧,实际上这还有很多需要了解的东西,慢慢了解去!如何运用Array和 Vector1.容器的定义容器:存放和操作其他对象的对象。12.array数组和Vector类在C++中,我们可以用其内置的array(数组)类型或标准库提供的vector类来定义容器。建议用vecto...

2020-04-04 23:26:30 153

原创 Essential C++学习记录&笔记整理4(条件语句和循环语句)

条件语句和循环语句这一节基本都是C语言知识,快速掠过~1.条件语句if-else,各种if-else嵌套,当然你得写一个符合要求的且逻辑通顺的if-else语句块,这点需要多把握。当测试条件属于整数类型或字符类型,我们还可以改用switch语句来取代一大堆的if-else-if子句switch语句中,当某个标签和switch的表达式值吻合时,该case标签之后的所有case标签都会被执...

2020-04-01 09:00:36 86

空空如也

空空如也

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

TA关注的人

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