<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[BooleanWater的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/BooleanWater</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; BooleanWater]]></copyright><item><title><![CDATA[编程练习考试专用及知识点总结]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/137138128</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/137138128</guid><author>BooleanWater</author><pubDate>Mon, 15 Jul 2024 11:48:13 +0800</pubDate><description><![CDATA[算法编程练习题]]></description><category></category></item><item><title><![CDATA[面试stm32基础知识]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/124229438</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/124229438</guid><author>BooleanWater</author><pubDate>Wed, 17 Apr 2024 20:41:52 +0800</pubDate><description><![CDATA[1.ISP
第一步进入bootloader模式：先置BOOT0为高，BOOT1为低，再复位单片机进入bootloader模式，之后通过上位机下载程序；
第二步配置启动代码的地方：代码下载完毕后，置BOOT0为低，BOOT1为低，再复位单片机即可启动用户代码。
STM32三种启动模式
下好程序后，重启芯片时，SYSCLK的第4个上升沿，BOOT引脚的值将被锁存，这就是所谓的启动过程。
1.STM32上电或者复位后，代码区始终从0x00000000开始，其实就是将存储空间的地址映射到0x00000000中。三种]]></description><category></category></item><item><title><![CDATA[蓝牙协议栈的简单介绍]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/124290869</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/124290869</guid><author>BooleanWater</author><pubDate>Wed, 20 Apr 2022 16:22:07 +0800</pubDate><description><![CDATA[一.蓝牙协议分析(2)_协议架构
摘录自BLE协议框架:这篇文章简单介绍协议栈的内容
1. Physical Layer:
2.LinkLayer:
1.状态和角色的定义：Standby,Initiating,Advertising,Scanning,Connection,五种链路状态
2.Air Interface Protocol：

定义在Physical Channel 上收发的数据包的格式packet format

Preamble(1 octet)  Access Address(4 octe]]></description><category></category></item><item><title><![CDATA[stm32的内存分布]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/119278723</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/119278723</guid><author>BooleanWater</author><pubDate>Sun, 01 Aug 2021 14:40:27 +0800</pubDate><description><![CDATA[一、MDK下的概念

1）Code：代码段，存放程序的代码部分。
2）RO-data：只读数据段，存放定义的常量。
3）RW-data：读写数据段，存放初始化为非0值的全局变量和静态变量。
4）ZI-data：零数据段，存放未初始化及初始化为0的全局变量和静态变量。
static变量(函数内静态局部变量和函数外静态全局变量)初始化的、未初始化的分别在RW-data、ZI-data；
全局变量初始化的、未初始化的分别在RW-data、ZI-data；
局部变量（函数内）在栈段；
动态分配的空间在堆中；
代码在]]></description><category></category></item><item><title><![CDATA[stm32笔记]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/110749977</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/110749977</guid><author>BooleanWater</author><pubDate>Sun, 06 Dec 2020 19:24:53 +0800</pubDate><description><![CDATA[一、GPIO4种输出模式4钟输入模式


  浮空,顾名思义就是浮在空中,上面用绳子一拉就上去了,下面用绳子一拉就沉下去了.
  开漏,就等于输出口接了个NPN三极管,并且只接了e,b. c极 是开路的,你可以接一个电阻到3.3V,也可以接一个电阻到5V,这样,在输出1的时候,就可以是5V电压,也可以是3.3V电压了.但是不接电阻上拉的时候,这个输出高就不能实现了.
  推挽,就是有推有拉,任何时候IO口的电平都是确定的,不需要外接上拉或者下拉电阻.
（1）GPIO_Mode_AIN 模拟输入
（2）GPI]]></description><category></category></item><item><title><![CDATA[STL的学习]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/109355796</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/109355796</guid><author>BooleanWater</author><pubDate>Thu, 29 Oct 2020 18:10:13 +0800</pubDate><description><![CDATA[一、string
1.char *和string的区别
char*是指向字符数组地址的指针，系统提供了一个string.h头文件声明了很多字符串操作函数，strlen strcat strcmp strcpy…
string是一个类，这个类将操作函数封装到一起，使得字符串的操作更灵活，方式更多，管理更合理；
string这个类，我们使用不用考虑内存的分配与释放，不要担心越界崩溃，string都做了相关的处理。
2.string的定义
typedef basic_string&lt;char,char_tra]]></description><category></category></item><item><title><![CDATA[C++面试题目汇总三]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/109225073</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/109225073</guid><author>BooleanWater</author><pubDate>Sat, 24 Oct 2020 11:43:50 +0800</pubDate><description><![CDATA[1.main（）之前执行的代码
GCC
gcc中可以使用attribute关键字，声明constructor和destructor函数。
vc
vc中不支持attribute，可插入函数进入初始化函数列表__xi_a,__xi_z和__xc_a,__xc_z由初始化CRTInit()调用。
C++
全局变量的构造函数在main之前；
int g_iValue=func;写在func里面然后去初始化全局变量。
2.缓冲区溢出
  缓冲区溢出是指当计算机向缓冲区内填充数据位数时超过了缓冲区本身的容量溢的数据覆盖]]></description><category></category></item><item><title><![CDATA[设计模式]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/109190756</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/109190756</guid><author>BooleanWater</author><pubDate>Tue, 20 Oct 2020 22:54:22 +0800</pubDate><description><![CDATA[模板模式
//抽象类（基类）
class AbstractClass
{
public:
	//模板方法，定义一个算法的框架流程
	void templateMethod(){
		//do something
		method1();
		method2();
		method3();
	}
	//公共方法
	void method1(){
		//do something
	}
	//子类必须实现的方法
	virtual void method2()=0;
	//默认实现
	virtual void m]]></description><category></category></item><item><title><![CDATA[剑指office-割线子]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/108966014</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/108966014</guid><author>BooleanWater</author><pubDate>Thu, 08 Oct 2020 17:46:25 +0800</pubDate><description><![CDATA[题目： 给你一根长度为n绳子，请把绳子剪成m段（m、n都是整数，n&gt;1并且m&gt;1）。每段的绳子的长度记为k[0]、k[1]、……、k[m]。k[0] * k[1]*…*k[m]可能的最大乘积是多少？例如当绳子的长度是8时，我们把它剪成长度分别为2、3、3的三段，此时得到最大的乘积18。
/*************************动态规划******************************/
int maxProductAfterCutting_solution1(int len]]></description><category></category></item><item><title><![CDATA[socket组播出现的问题记录]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/106604945</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/106604945</guid><author>BooleanWater</author><pubDate>Sun, 07 Jun 2020 18:03:37 +0800</pubDate><description><![CDATA[这个程序需要绑定两个端口：
1.通过端口复用的方法，绑定同一个端口；
2.接收和发送用不同的端口，在发送函数填入组播地址和发送端的端口号。
/*加载库文件*/
#pragma comment( lib, "ws2_32.lib" )
/*加载头文件*/
#include &lt;winsock2.h&gt;
#include &lt;ws2tcpip.h&gt;
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;

/*定义多播常量*/
#define MC]]></description><category></category></item><item><title><![CDATA[socket做的简单网络嗅探器]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/106590893</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/106590893</guid><author>BooleanWater</author><pubDate>Sat, 06 Jun 2020 17:37:04 +0800</pubDate><description><![CDATA[SniffDlg.h : 头文件
	
// SniffDlg.h : 头文件
//

#pragma once
#include "afxcmn.h"
#include "afxwin.h"
typedef struct _PROTN2T
{
	int proto;
	char *pprototext;
}PROTN2T;

#define PROTO_NUM 11

/* The IP header */
typedef struct _IPHEADER {
	unsigned char  header_]]></description><category></category></item><item><title><![CDATA[Windows Program-文件保存查找替换]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/106313051</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/106313051</guid><author>BooleanWater</author><pubDate>Sun, 24 May 2020 12:05:03 +0800</pubDate><description><![CDATA[#include &lt;windows.h&gt;
#include "resource.h"

#define EDITID   1
#define UNTITLED TEXT ("(untitled)")

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
BOOL CALLBACK AboutDlgProc(HWND, UINT, WPARAM, LPARAM);

// Functions in POPFILE.C

void PopFil]]></description><category></category></item><item><title><![CDATA[Windows Program-文本查看器]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/106042615</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/106042615</guid><author>BooleanWater</author><pubDate>Sun, 10 May 2020 21:41:24 +0800</pubDate><description><![CDATA[实现滚动显示
#include &lt;windows.h&gt;

#define ID_LIST 1
#define ID_TEXT 2
#define MAXREAD 8192
#define DIRATTR (DDL_READWRITE|DDL_READONLY|DDL_HIDDEN|DDL_SYSTEM|\
				DDL_DIRECTORY|DDL_ARCHIVE|DDL_DRIVES)
#define DTFLAGS (DT_WORDBREAK|DT_EXPANDTABS|DT_NOCLIP|]]></description><category></category></item><item><title><![CDATA[Windows Program-子控件]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/105929658</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/105929658</guid><author>BooleanWater</author><pubDate>Tue, 05 May 2020 11:23:12 +0800</pubDate><description><![CDATA[第9章子窗口控件
1.静态类(static)，静态子窗口控件，它不接收鼠标或键盘输入，也不会向其父窗口发送WM_COMMAND消息
下面6个静态窗口样式：




“RECT”静态样式
“FRAME”静态样式




SS_BLACKRECT
SS_BLACKFRAME


SS_GRAYRECT
SS_GRAYFRAME


SS_WHITERECT
SS_WHITEFRAME


样式中的“B...]]></description><category></category></item><item><title><![CDATA[Windows Program-计时器]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/105893387</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/105893387</guid><author>BooleanWater</author><pubDate>Sat, 02 May 2020 18:30:17 +0800</pubDate><description><![CDATA[第8章计时器
1.计时器使用方法一：
#define TIMER_SEC 1
SetTimer(hwnd,TIMER_SEC,uiMsecInterval,NULL);
KillTimer(hwnd,TIMER_SEC);

2.计时器使用方法二：
/*
 *回调函数TimerProc传入的参数：hwnd为SetTimer时的hwnd；message始终为WM_TIMER；
 *dwTime是从G...]]></description><category></category></item><item><title><![CDATA[C++语言学习]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/104894939</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/104894939</guid><author>BooleanWater</author><pubDate>Mon, 16 Mar 2020 12:20:56 +0800</pubDate><description><![CDATA[1.编译运行P3加练习
2.初识输入输出
  C++语言未定义任何输入输出（IO）语句，取而代之，包含了一个全面的标准库（standard library）来提供IO机制。
iostream库包含两个基础类型istream和ostream，分别表示输入流和输出流。一个流就是一个字符序列，是从IO设备读出或写入IO设备的。术语“流”（stream）想要表达的是，随时间的推移，字符是顺序生成或消耗的。...]]></description><category></category></item><item><title><![CDATA[第六章 数据结构基础(例题篇)--算法竞赛入门经典]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/104620984</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/104620984</guid><author>BooleanWater</author><pubDate>Mon, 02 Mar 2020 22:03:38 +0800</pubDate><description><![CDATA[第六章 数据结构基础(例题篇)
例题6-1：并行程序模拟（Concurrency Simulator,UVa210） P139
双端队列：在中的双端队列deque
deque readyQ;
readyQ.push_front(1);//从队首插入元素
readyQ.push_back(2);//从队尾插入元素
int pid = readyQ.back();//取队尾元素
readyQ.pop_...]]></description><category></category></item><item><title><![CDATA[MarkDown格式]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/104565052</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/104565052</guid><author>BooleanWater</author><pubDate>Fri, 28 Feb 2020 22:04:01 +0800</pubDate><description><![CDATA[一、代码高亮
你的代码

二、段落
半方大的空白&amp;ensp;或&amp;#8194;
全方大的空白&amp;emsp;或&amp;8195;
不断行的空白格&amp;nbsp;或&amp;#160;

111
 1&nbsp;1
 1 1
&nbsp;1&nbsp;1
11
三、字体、字号、颜色
 我是黑体字 
我是微软雅黑
微软雅黑
背景色是：orange
四、无序列表(与上面的内容必须...]]></description><category></category></item><item><title><![CDATA[第五章 C++与STL入门(例题篇:综合部分)--算法竞赛入门经典]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/104563271</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/104563271</guid><author>BooleanWater</author><pubDate>Fri, 28 Feb 2020 20:35:32 +0800</pubDate><description><![CDATA[第五章 C++与STL入门(例题篇:综合部分)
知识点一：大整数类 P124
#include&lt;iostream&gt;
#include&lt;vector&gt;
#include&lt;string&gt;
#include&lt;algorithm&gt;
//#include&lt;cstdio&gt;
using namespace std;
struct BigInteger ...]]></description><category></category></item><item><title><![CDATA[第五章 C++与STL入门(例题篇:STL部分)--算法竞赛入门经典]]></title><link>https://blog.youkuaiyun.com/BooleanWater/article/details/104560516</link><guid>https://blog.youkuaiyun.com/BooleanWater/article/details/104560516</guid><author>BooleanWater</author><pubDate>Fri, 28 Feb 2020 20:17:26 +0800</pubDate><description><![CDATA[第五章 C++与STL入门(例题篇:STL部分)
例题5-1：大理石在哪儿（UVa10474） P108
排序与检索
#include&lt;cstdio&gt;
#include&lt;algorithm&gt;
using namespace std;
const int maxn = 10000;
int main()
{
	/*ios::sync_with_stdio(false);*/
...]]></description><category></category></item></channel></rss>