自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Turtlebot2+激光雷达定点移动和避障(利用已有的地图)

准备工作 :已经建好图并保存需要运行的几个launch文件1、启动turtlebot的launch文件$ roslaunch turtlebot_bringup minimal.launch2、自主行驶的launch文件 $ roslaunch turtlebot_navigation amcl_demo.launch3、在rviz观察tb在地图上的移动的launch文件$ ro...

2019-11-19 17:34:32 2280 1

原创 Maix Dock M1W demo1--使用屏幕和摄像头详解

import sensor, lcd #导入库--sensor摄像头、lcd屏幕sensor.reset() #摄像头初始化init()sensor.set_pixformat(sensor.RGB565)# 设置摄像头格式RGB565sensor.set_framesize(sensor.QVGA)#设置分辨率QVGA:320x240sensor.run(1) #启动sensor.skip_frames() #跳过开始的一些帧lcd.init(freq=15000000) #lcd初始化,

2022-03-29 21:55:51 1066 1

原创 std::string查找---find、rfind &转换--stoi、to_string

size_type find()于字符串中寻找字符#include <string>#include <iostream>using namespace std;int main(){ int n; string const s = "This is a string"; // 从 string 开始搜索 n = s.find("is");//2 // 从位置 5 开始搜索 n = s.find("is", 5);//5

2022-03-11 15:39:31 1710

原创 std::string操作--replace、substr、copy

replace()替换字符串的指定部分#include <iostream>#include <string> int main(){ std::string str("The quick brown fox jumps over the lazy dog."); //替换[10,10+5)的内容 str.replace(10, 5, "red"); // (5) str.replace(str.begin(), str.begin(

2022-03-11 15:15:39 1263

原创 std::string操作---compare、starts_with、ends_with

compare()比较两个字符串#include <string>#include <iostream>using namespace std;int main(){string{""};//stringstring("abc");//char * int ret=string{"a"}.compare(string{"b"});//大于1,小于-1,等于0 int ret2=string{"abc"}.compare(1,2,string{"bc"});//"ab

2022-03-11 15:04:46 2523

原创 std::string操作--push_back、pop_back、append

void push_back( char ch);后附字符到结尾size()>max_size()抛出异常#include<iostream>#include<string>using namespace std;int main(){ string s = "abc"; s.push_back('d'); cout << s << endl; return 0;}void pop_back( );erase(end() -

2022-03-11 11:43:15 1371

原创 cs模式多进程多线程通信

多线程Client:创建套接字,连接服务器,通信Server:创建套接字,绑定,监听,接收,创建子线程,通信#include <pthread.h>int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine) (void *), void *arg); - 功能:创建线程 - 返回值:成功:0,失败:错误号 - 参数: -thread:传出

2022-03-11 11:16:49 446

原创 std::string操作——clear、insert、erase

clear清除全部内容#include <cassert>#include <string>int main(){ std::string s{ "Exemplar" }; std::string::size_type const capacity = s.capacity(); s.clear(); assert(s.capacity() == capacity); assert(s.empty()); assert(

2022-03-09 11:42:02 1005

原创 std::list

std::list 是支持常数时间从容器任何位置插入和移除元素的容器。不支持快速随机访问。它通常实现为双向链表。与 std::forward_list相比,此容器提供双向迭代但在空间上效率稍低。在 list 内或在数个 list 间添加、移除和移动元素不会非法化迭代器或引用。迭代器仅在对应元素被删除时非法化。5.2 成员函数5.2.1 修改器函数说明clear清除内容 (公开成员函数)insert插入元素 (公开成员函数)emplace (C++11)原位构造元

2022-03-03 11:55:08 703 1

原创 CS模式通信C++

C/S模式Client:创建套接字,连接服务器,通信Server:创建套接字,绑定,监听,接收,通信相关函数socket函数socket函数#include <arpa/inet.h>int socket(int domain, int type, int protocol); -功能:创建一个套接字 -返回值: - 成功:返回文件描述符,操作的就是内核缓冲区 - 失败: -1 -参数: - domain:协议

2022-03-03 11:52:36 694

原创 容器库——std::vector

容器库——std::vector详解

2022-02-03 13:32:48 16600

原创 二进制编码之格雷码

LeeCode89格雷码没有提前了解过格雷码的可能没有思路,一般会先找规律,但是会耗费很长时间也没有思路。学习过格雷码的同学可能会记得一个公式,而这个题目也就是按照这个公式求解的。(数电课程,是不是想到卡诺图了?卡诺图也是按照格雷码画的,这里就不再细说。)二进制编码有权码有权码有权码无权码无权码十进制8421码5421码2421码余3码BCD格雷码000000000000000110000100010001000101000001

2022-01-10 18:45:16 1943

原创 你知道为什么需要拷贝构造函数吗?

这篇文章对你可能有用

2022-01-06 20:52:55 959 1

原创 HDFS分布式文件系统操作

大数据与数据挖掘技术实验二:HDFS分布式文件系统操作启动Hadoop$ cd /usr/local/hadoop$ ./sbin/start-dfs.h #启动hadoop实验内容一、利用Shell命令和HDFS进行交互Hadoop支持很多Shell命令,其中fs是HDFS最常用的命令,利用fs可以查看HDFS文件系统的目录结构、上传和下载数据、创建文件等。教材《大数据技术原理与应用》的命令是以”./bin/hadoop dfs”开头的Shell命令方式,实际上有三种shell命令方式。

2022-01-03 23:28:17 3395

原创 蓝桥杯C++基础之标准库vector

标准库类型vectorvector表示对象的集合,其中所有对象的类型都相同。集合中的每个对象都有一个与之对应的索引,索引用于访问对象。因为vector“容纳着”其他对象,所以它也常被称作容器(container)。#include<vector>using std::vector1、定义和初始化vector对象vector<type> v1;//v1是一个空vector,它潜在的元素是type类型,执行默认初始化vector<type> v2(v1);//v

2021-12-30 12:10:39 780

原创 蓝桥杯C++组基础知识之标准库类型string

标准库类型string标准库类型string表示可变长的字符序列,使用前先加头文件#include<string>using std::string1、定义和初始化string对象string s1; //默认初始化,s1是一个空字符串string s2=s1; //s2是s1的副本//拷贝初始化string s2(s1); //s2是s1的副本//直接初始化string s3="hiya"; //s3是该字符串字面值的副本//拷贝初始化string s3("hiya

2021-12-30 00:00:18 3308

原创 c++类型限定符、存储类

C++修饰符类型数据类型修饰符signedunsignedlongshort类型限定符const:const类型的对象在程序执行期间不能被修改改变。const与static的区别volatile:告诉编译器不需要优化volatile声明的变量,让程序可以直接从内存中读取变量。对于一般的变量,编译器会对变量优化,将内存中的变量值放在寄存器中会加快读写速率(寄存器>cache>内存>外存)。restrict:只有C99增加了,restrict修饰的指针是唯一一种访问它所

2021-12-29 23:58:53 448

原创 C预处理器、错误处理、可变参数、内存管理、命令行参数

2、#undef、#ifdef、#ifndef、#error、#pragma//取消已定义的FILE_SIZE 重新定义它为42#undef FILE_SIZE#define FILE_SIZE 42//当MESSAGE未定义时,才定义MESSAGE#ifndef MESSACG #define MESSAGE "What you want"#endif//如果定义了 DEBUG,则执行处理语句#ifdef DEBUG //do what you want#endif

2021-12-28 15:25:32 356

原创 宏定义、define与typedef的区别、预编译、编译、汇编、链接

二、宏定义、define与typedef的区别、预编译、编译、汇编、链接1、typedef与#define1、define:宏定义,c语言中预处理命令一种。宏:宏(Macro)是一种批量处理的称谓。计算机科学里的宏是一种抽象(Abstraction)它根据一系列预定义的规则替换一定的文本模式。解释器或编译器在遇到宏时会自动进行这一模式替换。对于编译语言,宏展开在编译时发生,进行宏展开的工具常被称为宏展开器。计算机语言如C或汇编语言有简单的宏系统,由编译器或汇编器的预处理器实现。C的宏预处理器的工作只

2021-12-27 11:24:28 1832

原创 枚举 回调函数 位域 共用体 数组函数传递

一、数据类型1、基本类型2、枚举类型算数类型,被用来定义在程序中只能赋予其一定的离散整数的值。//定义enum 枚举名称{ 枚举元素1; 枚举元素2; ...};//自增 初始第一个为0,若未赋值则自增,赋值则从赋值的元素开始自增enum DAY{ MON=1;TUE;WED,THU,FRI,SAI,SUN};enum DAY day;//强制类型转换int a=1;day = (enum day) a;3、void类型4、派生类型????

2021-12-26 23:07:34 253

原创 Turtlebot2搭载激光雷达(ydlidar F4pro)通过gmapping构建地图准备:

环境:ubuntu16.04、turtlebot2、F4pro、ros kinetic分两部分一、运行激光雷达(简单的来说就是使激光雷达旋转起来)二、运行建图的文件(能在rviz上显示图像)需要下载的东西:1、激光雷达的ROS驱动包https://github.com/EAIBOT/flashgo或者克隆(先创建工作空间再使用命令克隆包,如果直接下载压缩包,则不用): $ git ...

2019-11-19 16:16:28 1520 2

原创 Python 酷Q qq机器人初学

Python 酷Q本片博客就简单的介绍用Python写酷Q插件的准备工作安装Python3.7(32-bit)我用的是Python37,因为目前仅支持Python32位版本,所以就只能用32位的。地址:https://www.python.org/ftp/python/3.7.4/python-3.7.4-webinstall.exe安装指导:https://zhuanlan.zhi...

2019-07-29 00:38:06 6884 8

空空如也

空空如也

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

TA关注的人

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