<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ZBMS_的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ZBMS_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ZBMS_]]></copyright><item><title><![CDATA[xshell使用ssh连接开发板]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/132294016</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/132294016</guid><author>ZBMS_</author><pubDate>Tue, 15 Aug 2023 11:24:23 +0800</pubDate><description><![CDATA[如果只是使用到ARN板的操作，那么使用串口连接与SSH连接没有区别。但是如果要配合给ARM板上传文件操作(比如使用Xftp工具上传文件，那么则需要给板子配置虚拟IP来让Xftp使用SFTP的方式连接ARM板)，那么就需要给板子配置IP，并且使用SSH连接可以在配置好板子IP断开板子与电脑的串口连接线，可以是使桌面更加简洁。新建xshell连接 ——>选择连接协议为SSH——>配置其主机为上述网址。]]></description><category></category></item><item><title><![CDATA[DLL的生成、编写、调用总结]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/125891658</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/125891658</guid><author>ZBMS_</author><pubDate>Sun, 31 Jul 2022 23:34:15 +0800</pubDate><description><![CDATA[一. DLL的创建
二. DLL内容编写
三. DLL调用
四.dll编写时宏的解释]]></description><category></category></item><item><title><![CDATA[VS属性设置_MT、MD、MF、CSystem32 和 SysWow64]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/125935107</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/125935107</guid><author>ZBMS_</author><pubDate>Sun, 24 Jul 2022 21:35:20 +0800</pubDate><description><![CDATA[一. LIBCMTD.lib msvcrd.lib 库冲突
二. mt md mtd mdd 编译选项
三.在静态库中使用 MFC，在动态库中使用MFC，使用标准0Windows库 区别
四. System32 和 SysWow64的区别 --在64位系统下 
]]></description><category></category></item><item><title><![CDATA[C/C++ 实现一个简单的文本编辑器(windows程序设计)]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/124883660</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/124883660</guid><author>ZBMS_</author><pubDate>Fri, 20 May 2022 15:04:50 +0800</pubDate><description><![CDATA[一．实现目的
为了更好的学习QT中的窗口、句柄等概念，先对Windows编程进行了大体了解，通过一个简单文本编辑器的实现，来加深对这些基本概念的理解。
二．具体实现
//! C/C++语言Windows程序设计 -&gt; 简易文本编辑器 -&gt; 演示
#include &lt;windows.h&gt;
#include &lt;winldap.h&gt;
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;

//! 各控件所使用的ID
#define]]></description><category></category></item><item><title><![CDATA[C++——多态定义、关键字、原理]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/109599659</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/109599659</guid><author>ZBMS_</author><pubDate>Wed, 11 Nov 2020 22:56:57 +0800</pubDate><description><![CDATA[1.什么是多态
不同对象完成同样的事，所能能达到的结果不同。
二.多态的定义
1.在继承下构成多态的条件：
a.调用函数的对象必须是指针或者引用；
b.被调用的函数必须是虚函数(在类成员函数前加virtual关键字的)，且完成了虚函数的重写。
2.虚函数重写：
若派生类中有跟基类函数名、参数、返回值都相同的虚函数，则称子类的虚函数重写基类的虚函数，也称作虚函数的覆盖。
eg:
class A
{
public:
	virtual void func()
	{
		cout &lt;&lt; "基类虚函数" ]]></description><category></category></item><item><title><![CDATA[C++三大特性之——继承]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/109500539</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/109500539</guid><author>ZBMS_</author><pubDate>Mon, 09 Nov 2020 00:02:36 +0800</pubDate><description><![CDATA[一.继承概念及定义方式
概念：
继承机制是面向对象程序设计时，让代码可以复用的一种手段。它允许在保持原类的基础之上，对这个类的内容进行扩展，延申，由此而产生的新类称之为子类，又名派生类。(继承是类设计层次的复用)。
定义方式：
//定义一个管理学校人员的类
//基类（父类）
class Person
{
public:
	void Print()
	{
		cout &lt;&lt; "姓名：" &lt;&lt; _name &lt;&lt; endl;
		cout &lt;&lt; "年龄：" &lt;]]></description><category></category></item><item><title><![CDATA[寻找俩个在一个所有元素都出现俩次的数组中只出现了一次的数]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/109387189</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/109387189</guid><author>ZBMS_</author><pubDate>Fri, 30 Oct 2020 16:09:51 +0800</pubDate><description><![CDATA[题目描述：
给定一个整数数组 nums，其中恰好有两个元素只出现一次，其余所有元素均出现两次。 找出只出现一次的那两个元素。
注意：
1.这俩个数字的输出顺序不重要；
2.算法要具有线性时间复杂度(O(n)),常数空间复杂度。
代码如下：
class Solution {
public:
    vector&lt;int&gt; singleNumber(vector&lt;int&gt;&amp; nums){
     //拿到这俩个数异或的结果
        int val=0;
        ]]></description><category></category></item><item><title><![CDATA[在一个所有元素都出现三次的数组中找出一个只出现了一次的元素]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/109386919</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/109386919</guid><author>ZBMS_</author><pubDate>Fri, 30 Oct 2020 15:57:47 +0800</pubDate><description><![CDATA[题目描述：
给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现了三次。找出那个只出现了一次的元素。
注意：
算法具有线性时间复杂度(O(n))。 不能使用额外空间来实现。
代码如下：
class Solution {
public:
    int singleNumber(vector&lt;int&gt;&amp; nums){
    //统计出数组中所有元素相同二进制位处1的个数
      int countbit[32]={0};
      for(auto e: nums）]]></description><category></category></item><item><title><![CDATA[删除一个排序数组中的重复项]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/109386495</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/109386495</guid><author>ZBMS_</author><pubDate>Fri, 30 Oct 2020 15:45:32 +0800</pubDate><description><![CDATA[题目来源于lettcode中的26题，以下为题目说明：
给定一个排序数组，你需要在原地删除重复出现的元素，使得每个元素只出现一次，返回移除后数组的新长度。
注意： 不要使用额外的数组空间，你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。
代码实现如下：
int removeDuplicates(int* nums, int numsSize){
	if (numsSize == 0)
		return 0;
	int i = 0;
	int j = 1;
	//遍历一遍数组
	whi]]></description><category></category></item><item><title><![CDATA[string类常用接口简介与简单模拟实现]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/109201452</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/109201452</guid><author>ZBMS_</author><pubDate>Wed, 21 Oct 2020 17:14:49 +0800</pubDate><description><![CDATA[string类是C++中常用的一个针对字符串管理所设计的的字符串类
string的一些常用的接口
1.常见的string类构造接口
string()        //构造一个空的string类对象
string(const char* s)  //以C格式的字符串，来构造出一个string类对象
string(size_t n,char c)  //用n个字符c来构造一个string类对象
string(const string&amp; s)  //拷贝构造
string(const string&am]]></description><category></category></item><item><title><![CDATA[快排的三种算法与实现]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/108954951</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/108954951</guid><author>ZBMS_</author><pubDate>Wed, 07 Oct 2020 23:00:56 +0800</pubDate><description><![CDATA[一.快排实现思想的基本框架
二. 快排的三种对子序列排序的实现思路
     1.左右指针法实现
     2.挖坑法
     3.前后指针法
三. 对快排的性能优化
]]></description><category></category></item><item><title><![CDATA[指针几个有意思的面试题]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/108501824</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/108501824</guid><author>ZBMS_</author><pubDate>Thu, 10 Sep 2020 19:59:17 +0800</pubDate><description><![CDATA[题一：
int main()
{
   int arr[5]={1,2,3,4,5};
   int *ptr=(int*)(&amp;arr+1);
   printf("%d %d",*(a+1),*(ptr-1));//运行结果：2  5
   return 0;
}

考察知识点：
1.数组名为首元素的地址，给其进行+1操作其实就是指针向后走一步，也就是第二个元素的地址；
2.取地址数组名（&amp;arr)取到的是整个数组的地址，虽然其指向的空间与数组名相同，但其所代表的意义不同。例如：取地址数组]]></description><category></category></item><item><title><![CDATA[memmove详解与模拟实现]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/108499219</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/108499219</guid><author>ZBMS_</author><pubDate>Wed, 09 Sep 2020 20:25:57 +0800</pubDate><description><![CDATA[memmove详解与模拟实现
一.menmmove函数原型及其功能
原型：
void* memmove(void* dest,const void* src,size_t size)
//size的单位：字节

功能：
从src的位置开始，向后拷贝size个字节的数据到dest的位置。功能与memcpy相同，但有以下几点这注意：
1.memmove与memcpy不同之处在于，memmove处理的源内存块和目标内存块是可以重叠的；
2.若出现源空间与目标空间重叠的情况，要使用memmove函数进行处理。
二.]]></description><category></category></item><item><title><![CDATA[变量在内存中存储的位置]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/103464055</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/103464055</guid><author>ZBMS_</author><pubDate>Mon, 09 Dec 2019 20:13:35 +0800</pubDate><description><![CDATA[存储区域
内存存储区域主要分为一下几块区域: 
├———————┤低端内存区域  
│ …… │堆栈区域 
├———————┤  
│...]]></description><category></category></item><item><title><![CDATA[C语言与C++中常见的读取函数]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/103339560</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/103339560</guid><author>ZBMS_</author><pubDate>Tue, 03 Dec 2019 22:48:56 +0800</pubDate><description><![CDATA[一.scsanf()函数
1.介绍：
scanf("输入格式控制符"，&amp;输入参数）；
若输入格式与格式控制符不相符合，则输入无效（大概率出现错误）
2.注意点
a. scanf不是直接在键盘上读取数据，而是在输入缓冲区读取;（键盘上的任意输入都会放入缓冲区，当然就包括了空格与回车）
b. 读取遇到空格或者换行符结束读取(输入格式内有空格不受影响)；
例如：
char a[20];
scan...]]></description><category></category></item><item><title><![CDATA[枚举与联合]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/103329288</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/103329288</guid><author>ZBMS_</author><pubDate>Sat, 30 Nov 2019 22:27:47 +0800</pubDate><description><![CDATA[一.枚举
枚举：一个被命名的整型常数的集合,关键字为：enum
枚举的定义与赋值：
enum Day//关键字加枚举名
{
 nan,   //注意：成员结束符（标识符）不是分号（；）而是逗号
 nv     //最后一个成员后边没有标识符
};

注意：1.像这样没有进行初始化，则代表从第一个成员起，依次赋值为0，1，2…。但当其某个成员赋值(初始化）后，其后边的成员按加1的规则确定其值。eg:...]]></description><category></category></item><item><title><![CDATA[结构体中的位段]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/103327354</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/103327354</guid><author>ZBMS_</author><pubDate>Sat, 30 Nov 2019 19:31:16 +0800</pubDate><description><![CDATA[一.什么是位段
在结构体中以二进制为单位指定成大小的方式，称为：位段或位域。
二.存在原因
有时数据的存储用不了一个或多个字节，如表示真假时，只需要一个比特位即可。
本质还是为了节省空间
三.使用方法
注意：位段不跨平台
1.位段的成员必须为unsigned（无符号）或int，char类型；
2.位段的成员名后边有一个冒号和一个数字（这个数字为所占比特位大小）
3.位段按照一次4个字节（int）或...]]></description><category></category></item><item><title><![CDATA[结构体内存对齐]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/103325338</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/103325338</guid><author>ZBMS_</author><pubDate>Sat, 30 Nov 2019 17:31:34 +0800</pubDate><description><![CDATA[一.为什么要内存对齐
1.平台原因：
不是所有硬件平台都可以访问任意地址上的任意数据，有些硬件平台只能访问某些地址上的特定类型的数据，否则抛出硬件异常；
2.性能原因：
数据结构（尤其是栈）应该尽可能的的在自然边界上对齐。（原因：为了访问未对齐的内存，处理器需要俩次访问操作；而对齐的内存则只需要一次）
其实从本质上来说：这是一种以空间换取时间的做法
二.对齐规则
32位cpu默认对齐数为4；64位...]]></description><category></category></item><item><title><![CDATA[结构体]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/103316370</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/103316370</guid><author>ZBMS_</author><pubDate>Fri, 29 Nov 2019 21:29:03 +0800</pubDate><description><![CDATA[一.结构体
定义：
一组变量的结合，这些变量之间可以毫无关联，类型各异，但大多情况下变量的存在都是为了描述一个事物。
关键字：
struct
使用场景：
要将一个大的变量当作一个原子，而这个变量本身却有着略微不同（属性相同但在数值上存在差别），需要对这个原子进行管理时，结构体便应运而生（在C语言中）。
例如：学校对学生的管理，将一个学生看作一个原子，而这些原子都有年龄，性别，年级…等的属性，但属于...]]></description><category></category></item><item><title><![CDATA[将一句话的单词进行倒置  C语言实现]]></title><link>https://blog.youkuaiyun.com/ZBMS_/article/details/102990424</link><guid>https://blog.youkuaiyun.com/ZBMS_/article/details/102990424</guid><author>ZBMS_</author><pubDate>Sat, 09 Nov 2019 20:22:14 +0800</pubDate><description><![CDATA[题目描述:
将一句话的单词进行倒置，标点不倒置。
输入描述：
每次测试会输入1个测试用例， 输入用例的长度不超过100
输出描述:
依次输出倒置之后的字符串,以空格分割
eg:
输入：i like beijing
输出：beijing. like i
解题思路：
将整句话先逆置一遍，然后在逐个单词进行逆置。

...]]></description><category></category></item></channel></rss>