自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 c++常用的字符串操作

1.将char * 转 int类型,用int atoi(const char *str)函数char *numstr = "12"; int val = atoi(numstr);2.字符串分片,主要用到头文件:stdlib.h stdio.hchar *strtok(char *str, const char *delim)分解字符串str为一组字符串,delim为分隔符。 char str[50]; cout << "Pleas...

2020-10-08 21:47:28 959

原创 C++浅层复制和深层复制,移动构造

浅层赋值:实现对象数据元素的一一复制 深层复制:当被复制的对象数据成员是指针类型时,不是符合该指针成员本身,而是将指针所指对象进行复制深层复制1.复制指针所指的对象#include <iostream>#include <vector>#include <string>#include <cstdlib>#include "stdio.h"#include <cassert>using namespace std;cla

2020-10-08 18:56:57 293

原创 汉诺塔迭代算法

//n盘子个数,src原地,temp中转地,dst目的地void HNT(int n, char src, char temp, char dst){ if(n<1) return; HNT(n - 1, src, dst,temp); //迭代的将n-1个盘子从原地,以dst为中转,搬到temp printf("%c-->%c ", src, dst); //打印移动顺序 HNT(n-1,temp, src, dst); //迭代将n-1个.

2020-09-21 12:35:32 691 1

原创 C++排序算法(归并排序)

分治:归并排序:把两个有序素组合并成1个。下面是示意图:一路按组拆分,直到拆分到最后接下里进行二分查找:

2020-09-20 14:05:17 259

原创 多种c++排序算法

shell 排序1.插入排序的优化2.步长:一开始设置为 元素个数/23.步长次排序:每次排序完,步长减一 每次排序都以步长为间隔给所有元素分组,组内作插入排序。 function.cpp中包括了冒泡排序,插入排序,选择排序,shell排序#include "function.h"void sawp(int &a,int &b){ int temp; temp = a; a = b; b = temp;}...

2020-09-14 20:37:11 102

原创 STL模板-vector 容器、迭代器

#include <vector>#include <iostream>using namespace std;int main(){ vector<int> v;//使用类模板制作一个容器对象,vector 相当于一个数组 vector<int> a; vector<int>::iterator it; //创建v容器的迭代器对象,迭代器是用来定位容器中某个元素 v.push_back(2); //添.

2020-09-14 09:14:36 525

原创 实习总结大纲

实习一个半月,学到很多东西,要感谢很多人。在学习上,做个如下总结。1.关于linux1.0命令安装1.1 git 仓库管理git initgit pullgit stashgit stash pop解冲突

2020-09-04 18:04:03 238

原创 Ubuntu下使用Protocol Buffer(简写:protobuf) (1.2-1.3环境测试)

1.2在Ubuntu环境中,以C++代码编译为例,操作步骤如下:1.2.1.protobuf编译器(protoc)安装:在build protobuf之前,先安装几个工具$sudo apt-get install autoconf automake libtool curl make g++ unzip从github下载源码包git clone http://github.com/protocolbuffers/protobuf.gitcd protobufgit s..

2020-08-13 14:14:44 319

原创 Ubuntu下使用Protocol Buffer(简写:protobuf) (1.2编码)

1.2protobuf编码规则1.2.1先了解varints编码以300为例:1010 1100 0000 0010,这串数字是怎么来的呢?1.首先删除每个字节的msb位,得到每7位为一组的数字:1010 1100 0000 0010 010 1100 000 00102.反转两组7位,再相连++010 1100 000 0010000 0010 ++ 010 1100 (反转两组7位,再相连++)100101100 (300的二进制码)-> 256+3...

2020-08-13 14:12:15 190

原创 Ubuntu下使用Protocol Buffer(简写:protobuf) (1.简介)

1.1简介 protobuf也叫protocol buffer是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了多种语言的实现:Java、c#、c++、Go 和 Python,每一种实现都包含了相应语言的编译器以及库文件。1.1.1..proto文件(分为proto2 和proto3),这里以proto3为例,对应的protoc指令的版本也要是3.0.0以上。 从上图看消息元素所带的数字,其中数字1~15是占极少byte,最好要把常用的消息...

2020-08-13 14:02:17 334

原创 linux下VMware Tools 安装(可以用于window和linux虚拟机文件互传)

1.关闭虚拟机2.选择虚拟机--> 安装VMware Tools(若字体为灰色则步骤3,若可以安装,则点击安装,跳至步骤5)3.若“安装VMware Tools”为灰色,则打开虚拟机设置-->硬件-->CD/DVD 2和CD/DVD 和软盘,从“使用ISO映象文件”改为“使用武力驱动器自动检测”-->确定4.这时候,开机,灰色字体变成可安装字体。5.桌面会出现个光盘 VMware Tools-->打开光盘,找到一个盒子VMwareTools-10..

2020-07-11 14:52:31 492

原创 Ubuntu 下运行C/C++程序(Ubuntu自带gedit可以运行c程序和c++程序)

运行C,打开Ubuntu的terminal1. sudo apt install gcc 安装gcc 编译器2. sudo apt install build-essential 提供软件包信息3. touch hello.c 建立一个.c文件 打开hello.c文件,输入c程序4. gcc hello.c -o test 编译hello.c文件,并把test作为out文件5...

2020-06-09 14:58:30 1080

原创 linux+Ubuntu的基础命令--11文件权限的控制

11.文件权限的控制在Desktop下 ll 列出文件以test2.txt为例- rwx rwx rwx 1 betterman betterman 101 May 26 20:18 test2.txt*- rwx rwx rwx 的意思- :表示二进制文件d:表示document 文件夹rwx rwx rwx 每三个字符为一组,第一组代表所有者对文件的操作权限 user;第二组代表所属组对文件的操作权限 group;第三组代表其他用户对文件的操作权限 ...

2020-06-02 15:52:15 156

原创 linux+Ubuntu的基础命令--8(shell ),9(影子文件),10(查看用户)

命令是需要一个解释器去解释命令的8.1 shell就是这个解释器(相当于翻译),可以用来接收命令,然后用相应的命令程序去执行命令shell分三种第一种 shell: /bin/bash第二种 shell: /bin/sh第三种 shell: /usr/sbin/nologin大部分内置命令都是内置在shell中的8.2修改shellcat /etc/shells 在某个用户下(如user2下)查看shell文件cat /etc/passwd 在user2...

2020-05-30 16:53:44 273

原创 linux+Ubuntu的基础命令--6(linux对用户的操作),7

Linux是个多用户系统(服务器可以多人管理,可以同时操作,多人互相不干扰)root用户权限最高!添加新用户需要有root权限或高权限的命令6.1.添加新用户useradd user2 添加一个新用户,这用户的目录在/etc/passwd, 但是会发现没有权限sudo useradd -m user2添加一个新用户,这用户的目录在/etc/passwd, 但是会发现没有权限(-m, 在建立user1 的同事,还建立家目录)cat /etc/passwd 查看user2是否...

2020-05-28 22:07:30 139

原创 linux+Ubuntu的基础命令--4、5

4 管道的用法管道:把一个命令的输出,通过管道连接,作为另一个命令的输入ls -lh | grep test2.txt 列出以kb显示的当前当前路径下的文件名,在列出的文件中,抓取字符test2.txt(其中 ls -lh 输出的结果,作为了grep test2.txt的输入)grep -v ^'#' /etc/services | more 把捕捉的 -v ^'#' /etc/services (/etc/services 目录中不以#开头的 内容)作为 分页显示(mo...

2020-05-26 19:39:57 190

原创 linux+Ubuntu的基础命令--3

3.查看文本文件内容cat 111.txt 查看111.txt的内容,并显示在对话框cat -n 111.txt 查看111.txt的内容,显示行号,并显示在对话框cat /ect/services 查看配置文件3.1从文档中搜索我们需要的内容grep hello 111.txt 抓取111.txt中,显示与hello字符相关的所在行的内容grep -vhello 111.txt 抓取111.txt中,显示与hello字符不相关的所在行的内容gr...

2020-05-24 09:40:37 69

原创 linux+Ubuntu的基础命令--2

每个命令都有相应的程序去执行命令,而不是简单的ls,mv,cp等,那么每个命令都会对应一个命令文件1.查看命令文件的路径which ls 查看ls命令文件所在的位置which cd 会发现查看不到cd命令文件所在的位置,因为cd命令是shell内置的命令如下例子:2.搜索文件2.1从索引库中搜索文件(搜索速度快)locate betterman 搜索出所有包含betterman字符相关的路径和文件注意:locate是从索引库中搜索的,库是需要隔一段时间更新一次的。因.

2020-05-23 22:06:36 122

原创 Ubuntu 基础命令(Ubuntu严格区分字母大小写)

右键-->open terminal1.linux命令格式cmd -option parametercmd是命令,就是一个操作parameter 一般是要要做的对象option一般是用来修饰parameter的2.目录相关的命令2.1进入目录pwd 查询当前所在路径位置(print work directory)cd 返回/home/用户名的根目录(change directory)cd Desktop/123 打开Desktop/123目录,“Deskto..

2020-05-22 21:37:54 941

原创 linux 操作系统第一步入门

1.在windows下安装一个虚拟机VMawave workstation(http://www.downza.cn/soft/74728.html)下载--选择安装路径--安装--序列号破解2.再下载一个Ubuntu操作系统(http://mirrors.aliyun.com/ubuntu-releases/18.04/)选择红色箭头下载,下载之后不需要解压3.在VM workstation中创建一个虚拟机,在镜像系统中选择Ubuntu-18.04-desktop-amd64.ios文件,按提示创

2020-05-21 11:12:02 163

原创 java基础(显与隐藏的)强制类型转换+常量与变量

1.       常量与变量1.常量*整数、小数*布尔boolean常量:只有两个数值.true/false(java语言特殊)*字符常量。将一个数字/字母/符号 用单引号(’’)标识*字符串常量。将一个或者多个字符用双引号(””)标识*null常量。只有一个值.null数据的最小单位=字节(byty)=8个二进制位每一位称之为:比特位(bit位)6的二进制表现

2018-02-02 14:10:03 369

原创 1.java介绍和环境变量搭建

1. java语言特点:可以跨平台:意思就是可以在windows,linux,mac操作系统下运行。但是要在操作系统中安装虚拟机,才能运行java程序2. java环境搭建概念JRE and jdkJRE解释:java runtime environment(java运行环境)包括java虚拟机和java程序所需要的核心类库jdk解释:java development ki

2018-02-01 10:48:01 159

STM32F030串口通信程序

STM32F030串口通信程序,STM32F030是一款性价比非常高的单片机,价格低廉,而且具有cortex-M0内核

2018-05-27

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

TA关注的人

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