自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 xshell使用ssh连接开发板

如果只是使用到ARN板的操作,那么使用串口连接与SSH连接没有区别。但是如果要配合给ARM板上传文件操作(比如使用Xftp工具上传文件,那么则需要给板子配置虚拟IP来让Xftp使用SFTP的方式连接ARM板),那么就需要给板子配置IP,并且使用SSH连接可以在配置好板子IP断开板子与电脑的串口连接线,可以是使桌面更加简洁。新建xshell连接 ——>选择连接协议为SSH——>配置其主机为上述网址。

2023-08-15 11:24:23 1291

原创 DLL的生成、编写、调用总结

一. DLL的创建二. DLL内容编写三. DLL调用四.dll编写时宏的解释

2022-07-31 23:34:15 9121 1

原创 VS属性设置_MT、MD、MF、CSystem32 和 SysWow64

一. LIBCMTD.lib msvcrd.lib 库冲突二. mt md mtd mdd 编译选项三.在静态库中使用 MFC,在动态库中使用MFC,使用标准0Windows库 区别四. System32 和 SysWow64的区别 --在64位系统下

2022-07-24 21:35:20 1658 1

原创 C/C++ 实现一个简单的文本编辑器(windows程序设计)

一.实现目的为了更好的学习QT中的窗口、句柄等概念,先对Windows编程进行了大体了解,通过一个简单文本编辑器的实现,来加深对这些基本概念的理解。二.具体实现//! C/C++语言Windows程序设计 -> 简易文本编辑器 -> 演示#include <windows.h>#include <winldap.h>#include <stdio.h>#include <stdlib.h>//! 各控件所使用的ID#define

2022-05-20 15:04:50 5544 4

原创 C++——多态定义、关键字、原理

1.什么是多态不同对象完成同样的事,所能能达到的结果不同。二.多态的定义1.在继承下构成多态的条件:a.调用函数的对象必须是指针或者引用;b.被调用的函数必须是虚函数(在类成员函数前加virtual关键字的),且完成了虚函数的重写。2.虚函数重写:若派生类中有跟基类函数名、参数、返回值都相同的虚函数,则称子类的虚函数重写基类的虚函数,也称作虚函数的覆盖。eg:class A{public: virtual void func() { cout << "基类虚函数"

2020-11-11 22:56:57 285

原创 C++三大特性之——继承

一.继承概念及定义方式概念:继承机制是面向对象程序设计时,让代码可以复用的一种手段。它允许在保持原类的基础之上,对这个类的内容进行扩展,延申,由此而产生的新类称之为子类,又名派生类。(继承是类设计层次的复用)。定义方式://定义一个管理学校人员的类//基类(父类)class Person{public: void Print() { cout << "姓名:" << _name << endl; cout << "年龄:" <

2020-11-09 00:02:36 230

原创 寻找俩个在一个所有元素都出现俩次的数组中只出现了一次的数

题目描述:给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。注意:1.这俩个数字的输出顺序不重要;2.算法要具有线性时间复杂度(O(n)),常数空间复杂度。代码如下:class Solution {public: vector<int> singleNumber(vector<int>& nums){ //拿到这俩个数异或的结果 int val=0;

2020-10-30 16:09:51 198

原创 在一个所有元素都出现三次的数组中找出一个只出现了一次的元素

题目描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次。找出那个只出现了一次的元素。注意:算法具有线性时间复杂度(O(n))。 不能使用额外空间来实现。代码如下:class Solution {public: int singleNumber(vector<int>& nums){ //统计出数组中所有元素相同二进制位处1的个数 int countbit[32]={0}; for(auto e: nums)

2020-10-30 15:57:47 530

原创 删除一个排序数组中的重复项

题目来源于lettcode中的26题,以下为题目说明:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。注意: 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。代码实现如下:int removeDuplicates(int* nums, int numsSize){ if (numsSize == 0) return 0; int i = 0; int j = 1; //遍历一遍数组 whi

2020-10-30 15:45:32 118

原创 string类常用接口简介与简单模拟实现

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& s) //拷贝构造string(const string&am

2020-10-21 17:14:49 359

原创 快排的三种算法与实现

一.快排实现思想的基本框架二. 快排的三种对子序列排序的实现思路 1.左右指针法实现 2.挖坑法 3.前后指针法三. 对快排的性能优化

2020-10-07 23:00:56 1036

原创 指针几个有意思的面试题

题一:int main(){ int arr[5]={1,2,3,4,5}; int *ptr=(int*)(&arr+1); printf("%d %d",*(a+1),*(ptr-1));//运行结果:2 5 return 0;}考察知识点:1.数组名为首元素的地址,给其进行+1操作其实就是指针向后走一步,也就是第二个元素的地址;2.取地址数组名(&arr)取到的是整个数组的地址,虽然其指向的空间与数组名相同,但其所代表的意义不同。例如:取地址数组

2020-09-10 19:59:17 165

原创 memmove详解与模拟实现

memmove详解与模拟实现一.menmmove函数原型及其功能原型:void* memmove(void* dest,const void* src,size_t size)//size的单位:字节功能:从src的位置开始,向后拷贝size个字节的数据到dest的位置。功能与memcpy相同,但有以下几点这注意:1.memmove与memcpy不同之处在于,memmove处理的源内存块和目标内存块是可以重叠的;2.若出现源空间与目标空间重叠的情况,要使用memmove函数进行处理。二.

2020-09-09 20:25:57 1252

转载 变量在内存中存储的位置

存储区域内存存储区域主要分为一下几块区域: ├———————┤低端内存区域 │ …… │堆栈区域 ├———————┤ │...

2019-12-09 20:13:35 1670

原创 C语言与C++中常见的读取函数

一.scsanf()函数1.介绍:scanf("输入格式控制符",&输入参数);若输入格式与格式控制符不相符合,则输入无效(大概率出现错误)2.注意点a. scanf不是直接在键盘上读取数据,而是在输入缓冲区读取;(键盘上的任意输入都会放入缓冲区,当然就包括了空格与回车)b. 读取遇到空格或者换行符结束读取(输入格式内有空格不受影响);例如:char a[20];scan...

2019-12-03 22:48:56 1086

原创 枚举与联合

一.枚举枚举:一个被命名的整型常数的集合,关键字为:enum枚举的定义与赋值:enum Day//关键字加枚举名{ nan, //注意:成员结束符(标识符)不是分号(;)而是逗号 nv //最后一个成员后边没有标识符};注意:1.像这样没有进行初始化,则代表从第一个成员起,依次赋值为0,1,2…。但当其某个成员赋值(初始化)后,其后边的成员按加1的规则确定其值。eg:...

2019-11-30 22:27:47 156

原创 结构体中的位段

一.什么是位段在结构体中以二进制为单位指定成大小的方式,称为:位段或位域。二.存在原因有时数据的存储用不了一个或多个字节,如表示真假时,只需要一个比特位即可。本质还是为了节省空间三.使用方法注意:位段不跨平台1.位段的成员必须为unsigned(无符号)或int,char类型;2.位段的成员名后边有一个冒号和一个数字(这个数字为所占比特位大小)3.位段按照一次4个字节(int)或...

2019-11-30 19:31:16 464 1

原创 结构体内存对齐

一.为什么要内存对齐1.平台原因:不是所有硬件平台都可以访问任意地址上的任意数据,有些硬件平台只能访问某些地址上的特定类型的数据,否则抛出硬件异常;2.性能原因:数据结构(尤其是栈)应该尽可能的的在自然边界上对齐。(原因:为了访问未对齐的内存,处理器需要俩次访问操作;而对齐的内存则只需要一次)其实从本质上来说:这是一种以空间换取时间的做法二.对齐规则32位cpu默认对齐数为4;64位...

2019-11-30 17:31:34 270

原创 结构体

一.结构体定义:一组变量的结合,这些变量之间可以毫无关联,类型各异,但大多情况下变量的存在都是为了描述一个事物。关键字:struct使用场景:要将一个大的变量当作一个原子,而这个变量本身却有着略微不同(属性相同但在数值上存在差别),需要对这个原子进行管理时,结构体便应运而生(在C语言中)。例如:学校对学生的管理,将一个学生看作一个原子,而这些原子都有年龄,性别,年级…等的属性,但属于...

2019-11-29 21:29:03 124

原创 将一句话的单词进行倒置 C语言实现

题目描述:将一句话的单词进行倒置,标点不倒置。输入描述:每次测试会输入1个测试用例, 输入用例的长度不超过100输出描述:依次输出倒置之后的字符串,以空格分割eg:输入:i like beijing输出:beijing. like i解题思路:将整句话先逆置一遍,然后在逐个单词进行逆置。...

2019-11-09 20:22:14 2360 3

原创 删除链表中所有值为val的节点

题目描述: 问题:1->2->3->4 val=2 要求输出为:1->3->4解题思路:1: 遍历一遍链表,对比每个节点,删除值为val的节点;2(需要注意的点):一般来说遍历都是从头开始,但是在这种没有头节点的链表中势必要考虑若第一个节点就为所要删除的节点时该如何解决if(!head)return head;while(hea...

2019-10-29 23:45:37 844

空空如也

空空如也

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

TA关注的人

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