自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (1)
  • 收藏
  • 关注

原创 指针和多重指针的一些理解( 谭浩强的恶梦....... )

说到C语言,就不得不说到指针,指针是有点难理解,对于刚学C语言的同学来说是很痛苦的。。。以前对指针的概念很模糊,只知道指针和地址相关,但是最近看了一本《深入理解计算机系统》,感觉好像有点开窍了,再加上stm32的寄存器开发,以及最近在Linux中总是看到多重指针,于是花了点时间去理顺一下,在这做个总结吧。从底层讲起计算机的内存是无序(没有序号)的,为了方便人的操控,于是把物理的地址映射到逻辑地址,即变成有序号的地址了,也就是我们看到的程序中的那些地址,形象的比喻是 存储器是一个很大的字节数组,这个数

2020-06-19 01:33:57 1671 3

原创 vim 自动补全代码(真香) (亲测有用!)找了好久...

前段时间看Linux教学的视屏,看到老师的vi可以自动补全,哇,这种东西怎么能不去搞搞呢,找了好久,看到的就是有人写的改.vimrc的文件,也是可以,我也用了,但是就是自动补全的代码的(可能我没找到用法吧)后来在GitHub找到了一个 vim开源项目,在这里记录下吧。直接来教程 !那个项目也地址vim git可能没有机场的同学打开比较慢一点,我就在说下吧在这里插入图片描述一步到位的代...

2020-05-07 22:19:50 6053 4

原创 ceph部署

ceph yum安装流程!! 通俗易懂

2022-08-21 17:13:05 1250 1

原创 epoll 底层如何做到 O(1)(通俗理解)

新页面epoll    - 通俗的理解:         有个小区,一开始小区里的人寄快递都是叫快递员上门取件,或者是去快递店里寄,前者有点费快递员的人力,后者可以有浪费顾客的时间,后来快递公司想到了一个方法, 在小区里建立了一个无人快递收件柜子(蜂巢),顾客把想寄的东西都放在那个柜子了,快递人员到一定的时间带个大袋子,把要寄送的东西带走,这样就省去快递员挨家挨户的收快递,提高了效率         小区里的人就是 那些文件io,柜子里的装的东西就是 有事件响应的io,这样就不用挨个去遍历

2021-10-05 16:23:06 360

原创 2.合并两个有序链表

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。思路:​ 两个链表,建立一个新的头结点,每次比较两个链表当前节点的值,然后比较大小,那个小则头结点指向那个(尾插法),当前节点值小的链表则指向下一个节点,空间复杂度为O(1),没有用到额外的空间 class Solution {public: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { ListNode* preHead

2021-06-13 11:33:22 152

原创 1.链表反转

1.链表反转定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。​ 示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL限制:0 <= 节点个数 <= 5000解法一 暴力:​ 遍历链表的每个节点,每遍历个节点就用头插法插入一个新的链表里​ 时间复杂度为 T(n^2) 空间复杂度为O(n)解法二: 迭代​ 不生成新的链表,把链

2021-06-05 16:49:23 112

原创 SqList *L 和 SqList * &L的一些理解以及多重指针的简单应用

SqList *L 和 SqList * &L关于 SqList *L 和 SqList * &L 的理解复习数据结构(李春葆 c++版本)时看到了 SqList * &L 当时好像没弄明白今天花点时间理顺下:typedef struct{Elemtype data[MaxSize];int length;}SqList;// void CreateList(SqList * &L,ElemType a[ ],int n){ int i

2021-04-07 15:19:32 7153 3

原创 ls命令的简单实现

结合apue 和 Unix/linux 编程实践简单实现 linux 下的命令 ls思路:1. 输入当前目录名字2.打开目录3.遍历目录需要调用的函数 :​ DIR *opendir(const char *name);​ 传入一个路径名,返回一个DIR 类型的指针,这个这个指针是指向一个文件流;​ struct dirent *readdir(DIR *dirp);​ readdir() 函数从一个目录流中读取连续的条目,每调用一个次,指

2021-03-27 11:39:40 487 1

原创 关于 关键字const 声明 位置不同的问题

在看 c++ Primer 时看到了 关键字const 的用法,很详细,在这里记录下以前只知道用const 修饰的 变量无法修改例如 const int x = 443;但是我们有时候可以看到 int x = 44; const int *p1 = &x; int * const p2 = &x;都是指针有什么,这两个有什么区别呢?const在前 不能使用指针p1 不能再修改 x的值const 在后呢, 通过指针p2 可以修改x的值,但是p2 这个指针只能指向x,不

2021-01-29 22:28:09 116

原创 ServletContext 对象的获取

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //doget 在get请求时调用 //super.doGet(req, resp); // 通过HttpServletRequest对象获取 ServletContext servletContext1 = req.getServ

2020-12-02 13:39:49 212

原创 关于在eclipse 部署 tomcat无法启动的问题

这个问题困扰了我好久,网上有遇到这种问题的但是我硬是没找到那个tomcat选项在哪里知道问题在哪里 就是少了个包 ***tomcat-juli.jar***,可我怎么也导入不进来终于在Stack Overflow看到有个回答上教程吧Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactoryat org.apache.catalina.startup.Bootstr

2020-11-29 11:48:32 190

原创 arduino 的 oled时钟简单显示

记录下好像代码逻辑有点low不过能用,后期再来优化下;#include <Arduino.h>#include <U8g2lib.h>#include <Wire.h>U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ D5, /* data=*/ D6, /* reset=*/ U8X8_PIN_NONE); // All Boards without Reset of the

2020-07-24 12:27:54 5274 1

原创 nodered无法打印出debug 的 小问题

不知道自己什么骚操作, debug一直无法打印出来 一直提示节点别禁用原来是流程哪里被禁用了…查了一下午。。。。害。。。。

2020-07-09 16:52:19 601

原创 dup2和dup理解和用法

每个文件描述符都指向一个文件表,dup(fd)返回一个新的新的文件描述符,这个文件描述符指向的文件表和fd的一样dup2呢,dup2(int oldfd,int newfd) 把newfd指向的文件表更改为 oldfd,这样一来newfd也和 oldfd一样指向相同的文件表了我们用一小段代码证明下/************************************************************************* > File Name: ddup2.c &gt

2020-07-05 23:52:41 474

原创 Linux中文件描述符的一些理解

我们知道文件描述符是整型的,哪为什么是整型的呢,在系统中那些函数 如 open read 怎么来通过一个整型的数值来确定,这个是我要打开的文件呢,抱着这几个问题我们来分析下。Linux中一切皆文件,所以io的操作是关键的,这些io操作又分为 标准io 和 和系统调用io ,标准io的库我们打的最多 就是#include<stdio.h>FILE 的文件指针,还有 fopen 文件打开 fread … 这些大家都应该很熟悉,这些都是围绕FILE文件指针来操作的,还有需要补充的是

2020-05-21 23:37:34 1117

原创 修改寄存器的位操作方法(与或非的灵活运用)

**都是 与或非的灵活运用**

2020-05-16 23:37:58 965

原创 tcp报文段的结构之序号和确认号 (计算机网络—自顶向下)

发现看书还是要做点笔记才行,看了就忘,没有多大的效率…自顶向下这本书,说的不会很晦涩(虽然没看过别的),很多方面可以理解,但是设计到一些算法原理的时候就有点头疼了,自己底子太差了…这次看到了 第三章运输层 3.5.2 节 tcp报文段结构![在这里插入图片描述](https://img-blog.csdnimg.cn/20200515103808988.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,te

2020-05-15 11:32:03 6935 2

原创 wait()和waitpid()的一些理解

从这两个函数的字面意思上来理解就是等待,还是先从手册说起吧man wait 查看其核心就是等待进程的改变状态先说下 wait 函数 ,(wiat其实就是waitpid的一个子动能)意思是 : wait()系统调用挂起调用的执行进程,直到其子进程之一终止。上面也说到了,wait(NULL) 等价于 waitpid(-1,NULL,0);为什么呢,下文会说到。简单的理解就是父子进程运行时,要是要父进程能加一个wait(NULL),这样的话父进程就要等子进程运行结束了,父进程才能继续运行,看

2020-05-09 11:46:41 2467 1

原创 关于java中this的用法(代指该类的对象)

在看head first的图形用户接口是看到一个addActionListener(this)的方法,这里的this是什么意思呢,以前只知道在构造函数是的用法,后来查了下this的用法**在写一个方法的时候,如果该方法需要一个该类的对象做参数的时候,通常传入this代指该类的对象 **.将this作为当前对象的引用传递给其他方法public class GUI implements Act...

2020-04-30 23:23:36 1097

原创 Linux Makefile的隐式规则(简单的理解)

看了Makefile用法,一直不明白什么事隐式规则,定义是这样的然后就出个这个,怎么回事,有点蒙,网上找了下,也很难理解,是我太愚钝了吧…看了很久才有点名明白,就是他会默认调用规则.c文件编译成.o文件 要用隐式规则的话就要就用第一个 $(CFLAGS)是可以自己再来定义的 如 CFLAGS = -Wall -O -g举个例子吧建三个文件//add.c#includ...

2020-04-03 22:24:04 663

原创 java 对象数组(最通俗的理解)

一个数组有很多元素,每个元素都是个管理者,管理什么呢,管的就是对象建一个类class Value { private int i; public void set(int i) { this.i = i; } public int get() { return i; }}然后来个弄个对象数组Value[] a = new Value[10];//我理解是这句话...

2020-03-29 09:48:29 183

原创 Linux静态库、动态库应用示例

2020-03-28 23:07:04 177

原创 putty 实现 虚拟机 和 Windows的连接

putty 实现 虚拟机 和 Windows的通讯最近在学Linux嵌入式开发,其中说到了用putty实现远程操控Linux软件是如图,网上找很多的,以前用也用过shell登陆阿里云,以为也是很容易上手,有个问题是ip地址是哪个呢?起初我是这样想的这不就是ip,用这个,但是用这个好像不行,每次都是链接错误后来在Linux里 终端查看用这个ip,并且安装上 openssh-serv...

2020-03-26 11:03:15 221

原创 oled的学习心得

今天学了下OLED的使用,说下心得吧我用的是0.96寸的,i2c通讯,就说下oled显示的原理吧.首先oled上的每一个像素都会发光,总共有12868个像素点,所以我想显示什么图案就可以控制像素点来发光,那要怎么控制呢,在这里说一种模式下的控制,页地址模式,在该模式下,oled分成八行,宽是64个像素,分成八分就是8128个像素,现在一份就有八行,128列,我们写入一个数据一个8位的二级制数据...

2020-03-25 23:09:57 1306

原创 1.opencv 初了解

这个学习笔记是结合 贾志刚老师的视屏 和 官方的opencv书籍 来的安装的教程,csdn都很多,就不在说了,值得一提的是如果是在官网安装可能很慢,建议用镜像安装在cmd输入 : pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python ,可以解决速度过慢问题,opencv 使用国内源安装不多说直接进入主题基...

2020-03-24 17:03:37 74

原创 stm32学习之路定时器的使用

上次讲了滴答定时器,这个我们来说下stm32 的其他定时器,分别有三种, 基本定时器,通用定时器和 高级定时器,在STM32F1 的定时器中分别由2 个基本定时器(TIM6、 TIM7) 、 4 个通用定时器(TIM2-TIM5) 和 2 个高级定时器(TIM1、 TIM8) 组成(这些资料也有),这接进入主题吧,这次我们讲的是stm32 的通用定时器(从简单的入门).通用定时器包含一个 16 ...

2020-02-16 11:21:57 303

原创 stm32学习之路 SysTick滴答定时器的简单理解以及使用

SysTick 定时器也叫 SysTick 滴答定时器, 它是 Cortex-M3 内核的一个外设,被嵌入在 NVIC 中(所以说stm32都有这个功能)。 它是一个 24 位向下递减的定时器, 每计数一次所需时间为1/SYSTICK, SYSTICK 是系统定时器时钟, 它可以直接取自系统时钟, 还可以通过系统时钟 8 分频后获取,这什么意思呢,我们知道时间T=1/f 秒,就是频率的倒数,f=7...

2020-02-12 22:32:43 1488

原创 stm32学习之路 中断优先级理解

中断时什么概念我想学过学过单片机的人都理解,就不多说了。直接说说我所迷惑的地方1.这个中断时如何控制的,怎么判断谁先谁后2.外设怎么能用到中断呢3.中断那么多,是不是哪一个都可以用怎么用其实很简单理解,我也是看普中的教学视频,他那里实行的是,用按键来中断,如up键亮led1的灯,然后down键灭掉led1的灯,就是这样,那如何用中断来实现呢?首先我们讨论下,那个键的优先级高,那个的优先级低...

2020-01-31 21:59:55 680

原创 stm32学习之路

stm32学习之路: GPIO的寄存器控制前段时间学习stm32时,看视频一直很懵逼,学了几天就没学下去,但一个点亮led灯都搞得我晕头转向,怎么点亮一盏LED灯要那么麻烦…后来学习计算机组成原理也顺带学了汇编,好像有点懵懂了,趁着寒假重头在来学一次,干就对了!写一点我的理解:我这个开发板是普中的,stm3f103…。首先,程序存储器、 数据存储器、 寄存器和 I/O 端口排列在同一个顺序的...

2020-01-27 23:13:58 161

STM32F103C8T6核心板测试程序以及管脚资料

STM32F103C8T6核心板测试程序,可以测试管脚,直接烧录就可以了 STM32F103C8T6核心板测试程序,可以测试管脚,直接烧录就可以了 STM32F103C8T6核心板测试程序,可以测试管脚,直接烧录就可以了 STM32F103C8T6核心板测试程序,可以测试管脚,直接烧录就可以了

2020-02-13

空空如也

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

TA关注的人

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