- 博客(25)
- 资源 (3)
- 收藏
- 关注
原创 C++备忘录(4) 代码中使用环境变量
使用getenv可以得到指定的环境变量假设我们在linux中定义了一个环境变量vim ~/.bashrcexport HOME="aaaaaa" source ~/.bashrc然后在C++程序中调用getenv函数,即可直接获取这个变量的值getenv("HOME")
2021-05-19 10:25:58 167
原创 C++通用makefile文件
#创建bin目录用来存放可执行程序TAG_DIR = ./bin$(shell mkdir -p ${TAG_DIR})#将当前路径和src目录下的所有cpp文件包含SRC = $(wildcard .cpp) $(wildcard src/.cpp)DIR=$(notdir (SRC))OBJ=(SRC))OBJ=(SRC))OBJ=(patsubst %.cpp, %.o, KaTeX parse error: Expected 'EOF', got '#' at position 8: (
2021-05-11 12:20:51 177
原创 Linux下通过进程名称命令杀死进程
命令:ps -ef |grep 程序名称| grep -v "grep" | awk '{ print $2}' | xargs kill -9
2021-04-15 10:45:26 880
原创 Qtcreator vs2019 项目用git管理 win10系统
环境:Qtcreator5, win10安装git bash , 然后生成公钥添加进git管理平台(github, gitee等),我们这里用gitee。通过Qtcreator创建项目。用git bash进入此项目的跟目录。执行命令 git init git add . git commmit "create project" git remote add origin git@gitee.com:jarven-zhang/pss_client.git git p
2021-04-12 14:34:44 181
原创 运行hiredis报错error while loading shared libraries
执行g++ redis.cpp -std=c++11 -L/usr/local/lib/ -lhiredis报错:./a.out: error while loading shared libraries: libhiredis.so.1.0.1-dev: cannot open shared object file: No such file or directory创建文件/etc/ld.so.conf.d/usr-libs.conf, 内容如下:/usr/local/lib再执行/
2021-03-30 16:39:00 420
原创 c++11 多线程编程(1)多线程同步
通过互斥锁和条件变量实现线程同步例题:交替打印ABCDEABCDE…代码:#include <iostream>#include <future>#include <thread>#include <unistd.h>#include <mutex> using namespace std; mutex mx; //互斥锁condition_variable cv; //条件变量int flag = 0;//全局变量i
2021-01-19 09:40:41 207
原创 C++备忘录(3)移动构造函数
拷贝构造函数当类成员变量里面有指针时,为了预防浅拷贝,我们需要手动实现拷贝构造函数。拷贝构造函数调用的场景:初始化新对象作为参数或是返回值下面代码中均用g++编译且带参数 -fno-elide-constructorsclass Test { public: Test()
2021-01-06 15:50:24 179
原创 C++备忘录(2)地址运算
运行环境:cc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04) 64位机器首先看一段代码{ const char *p1 = "hello"; const char *p2 = "hello";
2021-01-05 23:21:51 384
原创 在linux系统中安装vim NERDTree插件
直接用这个命令就可以了git clone https://github.com/scrooloose/nerdtree.git ~/.vim/
2020-09-20 22:47:22 366
原创 mysql数据库操作
环境系统:ubuntu18.04版本:mysql 5.7.25命令创建名字为oneDataBase的数据库CREATE DATABASE IF NOT EXISTS oneDataBase;创建表先设计一个表如下:学生学号学生姓名课程名成绩0601张三语文850602李四数学630601张三数学950602李...
2020-07-18 16:01:30 113
原创 C++备忘录(1)自增运算符
C printf函数初识printf有意思的代码段初识printfprintf函数太普通了,是谁都会用的c语言输出函数。我们的Hello world就是通过调用它来实现的。一般的用法如下:const char * srcStr = "Hello world!";printf("%s\n", srcStr); %s ----- 打印字符串 %d ----- 打印int %f ----- 打印float有意思的代码段{ int i = 0;
2020-07-18 15:56:23 123
原创 关于区块链的一点随笔
什么是区块链很多个区块,连在一起,就形成了区块链。如下图:区块链在最开始只有一个区块,然后加入了区块1, 再然后加入了区块2,一般我们说的区块链都是一条很长的链条,那是因为它存在并运行了很长的时间了啊。比特币(BTC, bitcoin)谈区块链是离不开比特币的。先按住你对区块链的懵懂,别急,了解了比特币就了解了区块链。因为,区块链就是从比特币衍生出来的概念。比特币是区块链之母。...
2019-12-10 10:22:07 123
原创 C/C++ vim设置
set ts=4 "设置tab长度set nu "显示文件行号" set cuc 设置鼠标所在列高亮set cul " 设置鼠标所在行高亮" 高亮显示查询搜索的字符,修改下面数字即可修改颜色,自己调试合适的hi Search term=standout ctermfg=7 ctermbg=3 "编码设置 set enc=utf-8 set fencs=utf-8,ucs...
2019-07-26 14:12:55 504
原创 关于C++11的Lambda函数
参考:https://blog.csdn.net/lixiaogang_theanswer/article/details/80905445基本定义[capture](parameters) mutable ->return-type{statement}最简单的lambda函数#include <iostream> using namespace std; i...
2019-07-03 14:27:57 81
原创 排序算法的C++实现----快速排序
int printArray(int a[], int len){ for(int p = 0; p < len; p++) { cout << a[p] << " "; } cout << endl;}int exchange(int& a, int& b){ a = a ...
2019-04-26 22:58:08 93
原创 C++单链表操作:节点的插入、删除、链表的转置
#include &lt;iostream&gt;using namespace std;struct node{ int data; node* next;};//插入一个节点,其实也是创建链表的意思int createrChain(node*&amp; head, int data){ node *new_one = new node; n...
2019-03-03 17:20:29 1123
原创 Docker学习笔记(一)linux基本操作命令
名词解析容器容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。因此容器可以拥有自己的root 文件系统、自己的网络配置、自己的进程空间,甚至自己的用户ID 空间。容器内的进程是运行在一个隔离的环境里镜像(Image)镜像相当于一个文件系统仓库(Repository) 就好像软件包上传下载站,有各种软件的不同版本被上传供用户下载Linux安装启动...
2019-01-17 18:03:19 151 1
原创 qtcreator的C++ pro文件配置
TEMPLATE = appDESTDIR = ./bin/ #指定路径TARGET= service #生成的可执行文件名称CONFIG += console c++11CONFIG -= app_bundleCONFIG -= qtSOURCES += main.cppHEADERS += Handler.hLIBS += -lglog #链接库...
2019-01-02 14:43:54 1619
原创 UML类图-----类之间的关系
类图的基本介绍类图的3个基本组件:类名、属性、方法。类之间的关系1. 泛化(generalization)描述:也叫继承关系,在类图中使用带三角箭头的实线表示,箭头从子类指向父类。2. 实现(Realization)描述:在类图中就是接口和实现的关系。3. 依赖(Dependency)描述:对象之间最弱的一种关联方式。代码中一般指由局部变量、函数参数、返回值建立的对于其他对象...
2018-12-27 11:03:37 3146 1
翻译 ZILLIQA白皮书中文翻译 第八部分 激励层
译者声明:本文内容为翻译ZILLIQA英文版白皮书,个人阐述均有注明。个人水平有限,如有错误,请不吝指正,谢谢!第八部分 激励层A. 代币(token)供应ZILLIQA网络限量供应210亿个ZIL。最小单位为一个ZIL的(译者注:没有像以太坊那样给最小单位一个名称)。每个最终块产生时都有区块奖励,产生一些新的代币。区块奖励随着时间的推移而在十年内递减为0。我们的计划是,前4年内开采...
2018-10-18 11:51:05 269
翻译 ZILLIQA白皮书中文翻译 第五部分 网络层
译者声明:本文内容为翻译ZILLIQA英文版白皮书,个人阐述均有注明。个人水平有限,如有错误,请不吝指正,谢谢!现在,ZILLIQA的已经将POW1和POW2合并为一个POW,但是白皮书还没有更新,所以这个第5部分,其实是已经废弃了,至少是不准确了,希望大家了解。本文仍然是翻译的之前的旧版本白皮书,译者会在官方更新白皮书之后,及时修改。第五部分 网络层ZILLIQA旨在对交易率进行扩...
2018-10-17 20:19:14 615 2
翻译 ZILLIQA白皮书中文翻译 第四部分 数据层
译者声明:本文内容为翻译ZILLIQA英文版白皮书,个人阐述均有注明。个人水平有限,如有错误,请不吝指正,谢谢!第四部分 数据层从广义上讲,数据层定义了构成ZILLIQA全局状态的数据。 通过扩展,它还定义了ZILLIQA中不同实体对象更新其全局状态所需的数据。A. 账户、地址、状态与以太坊一样,Zilliqa是一个基于帐户的系统。它的账户有两个类型:普通账户和合约账户。普通帐...
2018-10-17 12:17:34 423 2
翻译 ZILLIQA白皮书中文翻译 第三部分 加密层
译者声明:本文内容为翻译ZILLIQA英文版白皮书,个人阐述均有注明。个人水平有限,如有错误,请不吝指正,谢谢!第三部分 加密层加密层定义了ZILLIQA中使用的加密原语,与其他几个区块链平台类似,ZILLIQA依靠椭圆曲线加密技术进行数字签名,并使用内存硬散列函数进行工作量证明。在本白皮书中,我们广泛使用SHA3 哈希函数来呈现我们的设计。SHA3最初基于Keccak,而Kecca...
2018-10-17 11:57:22 511
翻译 ZILLIQA白皮书中文翻译 第六部分 共识层
译者声明:本文内容为翻译ZILLIQA英文版白皮书,个人阐述均有注明。个人水平有限,如有错误,请不吝指正,谢谢!共识层前面提到过(译者注:好像是第5部分),分片和DS委员会,分别在微块和最终块上运行共识协议。在本节中,我们将介绍共识层,正是它定义了共识协议。在下面的阐述中,我们将分片和DS委员会统称为共识组。A. 实用拜占庭容错(PBFT)ZILLIQA共识协议的核心,依赖于Ca...
2018-10-17 10:52:13 573
翻译 ZILLIQA白皮书中文翻译 第二部分 系统的设置和构思
译者声明:本文内容为翻译ZILLIQA英文版白皮书,个人阐述均有注明。个人水平有限,如有错误,请不吝指正,谢谢!另注:白皮书的第一部分都是对ZILLIQA的动机和目标之类的进行说明,不涉及技术部分,所以译者没有翻译。第二部分 系统的设计和构思实体对象在Zilliqa网络中,存在两个主要实体:用户和矿工。用户是一个外部实体,他们通过Zilliqa网络来转账或是运行智能合约。矿工是...
2018-10-17 10:50:38 399
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人