- 博客(24)
- 收藏
- 关注
原创 c++中的构造函数和析构函数
在c++中,我们知道它是一种面向对象的计算机编程语言,在定义类的时候,往往会使用构造函数和析构函数~构造函数:用于创建对象的特殊成员函数,当创建对象的时候,系统自动的调用构造函数;作用:1.类成员变量的初始化(静态变量除外,它是在全局数据区进行初始化的)2.为对象分配内存空间3.请求其他资源原型:类名::类名(参数表);特性:1.用户没有定义构造函数时,系统...
2022-04-11 18:52:11 1478
原创 boot loader&kernel&文件系统
什么是 BootLoader 呢? 实际上,它是一个引导程序,硬件复位以后第一个需要执行的程序。主要工作就是初始化操作系统运行的环境,像内存,定时器等。这些结束以后,再将操作系统代码加载到内核中,操作系统就可以启动执行,到这个时候,boot loader的工作就结束。 常见的boot loader: uboot ,read boot等;什么是kernel呢? kernel就是Linux的内核,即Linux操作系统自身的代码。所以在uboot执行的最...
2021-11-17 10:34:15 381
原创 RS-485和RS-232的区别
1.什么是RS-485和RS-232? RS-232、RS422和RS-485 均属于UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),使用信号线(Rx 和Tx,有时会用到GND线)就可以完成通信过程;1.1 RS-232的介绍: RS-232是美国电子工业协会EIA(Electro...
2019-08-29 16:34:49 926
原创 JLINK仿真器
最近在工作中使用到下面这个东东,名字叫J-LINK仿真器,它的作用其实就是实现软件和硬件的一个接口工具 J-LINK简介 J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境支持所有ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4...
2019-08-28 15:17:51 3345 1
原创 EEPROM的介绍
最近使用到EEPROM,所以简单的了解下它的简单知识:一. EEPROM 是什么 EEPROM (Electrically Erasable Programmable read only memory)是指带电可擦可编程只读存储器。是一种掉电后数据不丢失的存储芯片。 EEPROM 可以在电脑上或专用设备上擦除已有信息,重新编程。一般用在即插即用。二. 使用时一些特...
2019-08-16 14:21:04 8111
转载 一个最简单的加密解密算法(人人能懂)------异或加密
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/stpeace/article/details/8294980#include <iostream> // KEY 非常重要,不能对公众泄露KEY值// 发送端和接收端提前秘密约定好KEY值#define KEY ...
2019-08-14 17:23:38 717
转载 520最悲情的告白是这样的
男对女说:#include <stdio.h>int main(){ while(1) { printf("I love you!\n"); } return 0;}女对男说:#include <stdio.h> int main(){ while(1); {...
2019-08-09 17:09:33 240
原创 SPI IIC UART三种通信方式的比较
1.UART、SPI、IIC是经常用到的几个数据传输标准,基本描述: (1)UART(Universal Asynchronous Receive Transmitter):也就是我们经常所说的串口,基本都用于调试。 主机和从机之间采用三根线,RX,TX,GND。TX是用来发送数据,RX是用来接收数据,这个过程中,收和发不是同一根线,所以它是全双工进...
2019-08-07 14:30:25 5408
原创 设计模式----六大设计原则
六大设计原则1.单一职责原则(Single Responsibility Principle)定义:应该有且仅有一个原因引起类的变更。单一职责原则的好处:(1)类的复杂性降低,实现什么职责都有清晰明确的定义(2)可读性提高,复杂性降低(3)可维护性提高,可读性提高(4)变更引起的风险降低2.里氏替换原则(Liskov Substitution Principle)...
2019-08-02 17:03:08 187
原创 Modbus TCP
1.Modbus TCP简介 Modbus TCP 是在Modbus RTU协议的基础上发展而来,它将Modbus协议嵌入到底层的TCP/IP 中构成,这样就在TCP/IP的以太网上实现了客户机(client)-服务器(server)架构的Modbus报文通信;2.Modbus TCP 的数据帧 它由MBAP报文头和PDU组成,MBAP的报文头占...
2019-07-15 14:19:30 2301
原创 TCP /UDP区别
UDP协议的特点(不连接,不可靠,数据报)(1)无连接,就像发短信一样,不需要建立连接,直接传输 (2)UDP尽最大努力交付,不保证可靠性,没有确认机制,没有重传机制 (3)UDP是面向报文的,应用层交付给UDP的报文,UDP原样发送,不会拆分和合并 (4)UDP首部只有8个字节,开销小 (5)UDP支持一对一、一对多、多对多的交互通信 (6)如果校验和出错,直接丢弃 ...
2018-08-22 13:13:46 297
原创 linux网络基础
计算机网络背景网络发展:计算机之间相互独立网络互联:多台计算机连在一起,完成数据共享 局域网:计算机数量较多,可以通过交换机和路由器连在一起广域网:将远隔千里计算机连在一起协议:一种约定;计算器之间的传输媒介是光信号和电信号,通过频率和强弱来表示0和1,要传递不同信息,就需要约定双方的数据格式网络协议:一种大家都遵守的标准OSI七层模型:OSI(Open S...
2018-08-04 16:11:20 303
原创 c++内存管理
1.内存分段问题栈:又叫做堆栈,非静态局部变量/函数参数/返回值,栈是向下增长的内存映射:是高效的I/O映射方式用于装载一个共享的动态内存库。用户可以使用系统接口创建共享内存,做进程间通信堆:用于程序运行中动态内存分配,堆是向上增长的;数据段:存储全局数据和静态数据代码段:可执行的代码/只读常量2.c中动态内存开辟适合场景:长度在程序运行时才知道数组分配内存空间为什...
2018-08-04 16:09:07 256
原创 自定义类型(结构,枚举,联合)
结构体(struct):1定义:结构体是一些值的合集,这些值称为成员变量,结构的每个成员变量可以有不同的类型;eg:struct tag //tag结构体标签{char name[10]; //名字int age; //年龄char gender[3]; //性别}; //分号不能丢在结构体声明的时候,可以省略结构体标签tag2.结构体的成员:标量,数组,...
2018-08-04 16:07:49 334
原创 时间复杂度 空间复杂度
1. 分析普通情况下的时间复杂度/空间复杂度 (1)时间复杂度 一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数,用T(n)表示,若有某个辅助函数f(n),使得当n趋近于无穷大时,T(n)/f(n)的极限值为不等于零的常数,则称f(n)是T(n)的同数量级函数.记作T(n)=O(f(n)),称O(f(n)) 为算法的渐进时间复杂度,简称时间复杂度. ...
2018-05-24 10:42:07 302
原创 指针与数组详解
1.什么是指针数组和数组指针? 指针数组:指针数组可以说成是”指针的数组”,首先这个变量是一个数组,其次,”指针”修饰这个数组,意思是说这个数组的所有元素都是指针类型,在32位系统中,指针占四个字节。数组指针:数组指针可以说成是”数组的指针”,首先这个变量是一个指针,其次,”数组”修饰这个指针,意思是说这个指针存放着一个数组的首地址,或者说这个指针指向一个数组的首地址。 指针数组首先先定义一...
2018-04-29 19:49:53 331
原创 可变参数列表解析
在日常写代码时,经常会用到“printf”函数,而printf函数可以传递多个参数,可以1个,2个,多个。而我们写函数时,会注意到自己定义的形参数量是已经定义好的,对比printf函就会发现该函数参数数量却是传递任意个数都可以输出的。如:1 printf("%d\n", 2018);2 printf("%s\n","hello world");3 printf("%d %s\n", ...
2018-04-29 18:40:08 294
原创 C语言----扫雷游戏
编程实现扫雷游戏的步骤主要有以下几个方面: 首先有两个简单要求: 1 .第一次扫雷不能被炸死; 2.周围没有雷的时候,可以实现部分展开。 实现以上要求有以下几个函数: 1.初始化棋盘; ...
2018-04-11 22:48:11 361
原创 三子棋
三子棋的实现思路有以下几个步骤 1,首先要创建两个数组,然后初始化数组为空格; 2,打印棋盘,也就是这个3*3的二维数组; 3,玩家下棋,要进行坐标判断,然后输入,和打印; 4,电脑下棋,注意电脑随机值的范围; 5,判断谁获胜,横,列,对角线的值是否相等,判断获胜方,如果棋盘满了,且没有相等,则为平...
2018-04-09 12:52:16 857
原创 C语言中数组的小结
一,一维数组 创建和初始化: 1 .数组创建时,[ ]中要给一个常量,不能使用变量; 2 . 数组的初始化可以有两种:(1),全部初始化为同一值,例如:int arr[ 20]={1},他就是将数组全部初始化成1. ...
2018-04-05 16:25:50 318
原创 C语言中的数组小结
一维数组数组的概念:一组相同元素的集合。type_t(类型) arr_name(数组名)[const_n](常量表达式<数组大小>)eg:int n = 0;scanf("%d",&n);int arr[n]; 此处错误,不能为变量应需常量初始化:举例:int a[3+5] = {1,2,3}; 不完全初始化,数组里内容为1230...
2018-04-05 15:37:03 283
原创 c语言操作符用法及总结
1.算术操作符 + - * / % 解释:除了%操作符之外,其他的几个操作符可以起作用于整数和浮点数。 :对于 / 操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数除法。 :% 操作符的两个操作数必须为整数。返回的是...
2018-03-30 21:12:01 502
原创 Where there is a will , there is a way
好奇心是一个神奇的东西,2015年10月28号我接触到了王者荣耀,直到大二,两年的时间,我可能除了睡觉之外干的最多的事情就是游戏。曾经我也是一名游戏大神,最强王者就是我。然而,当我成为一名大三的学生时,大四学长找工作的艰难,父母的唠叨,就业的压力,像一座座大山一样,让我不得不去想,如果大学毕业了,该何去何从。游戏玩的再好,也不可能养活自己。所以我想改变,两年的游戏玩家体验让我知道了,比...
2018-03-19 20:12:21 762 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人