自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

哦,原来你也在这里。

Linux、C++、Python、Golang、数学

  • 博客(514)
  • 资源 (26)
  • 问答 (2)
  • 收藏
  • 关注

原创 手把手教你配置vscode的c++开发环境(wsl + 远程)

一定记得在linux安装gcc/g++开发环境一定记得在linux安装gdb调试工具,有些默认没有安装,即使正确配置了launch.json和task.json,也会报错。。。

2022-11-05 12:03:23 4119

原创 netstat 命令详解

netstat命令是常见的查看网络信息的命令,主要包括网络连接的信息、路由表的信息、网卡的信息和广播的信息等;本次不会讲解如何使用netstat命令,详细的使用方法请参见:man netstat本次主要聊一聊网络连接的信息,当使用netstat -anop命令时,输出如下:那么,这些信息主要是什么意思呢?待我一一道来。Proto协议的类型,主要有tcp、tcp6、udp、unix、udplite、raw、sctp等,当然可以通过传相应的协议类型给netstat命令而仅仅显示某种类型的协议,如:

2022-03-01 14:25:08 9228 3

原创 Enter passphase for key, 避免频繁的输入被密码保护的ssh key

启动agent eval `ssh-agent -s`添加id_rsassh-add ~/.ssh/id_rsa输入密码,在不重启电脑之前,可以不用频繁的输入密码了。

2022-02-23 14:11:43 3928

原创 systemctl systemd.service

Namesystemd.service — Service unit configurationSynopsisservice.serviceDescriptionA unit configuration file whose name ends in ".service" encodes information about a process controlled and supervised by systemd.This man page lists the configu

2021-12-15 12:29:48 542

原创 编写使用systemctl管理的service服务

上文介绍了systemctl命令是基于Systemd系统的,本文主要简单的介绍一下如何编写一个可以使用systemctl命令管理的后台进程(daemon进程),使用systemctl命令管理进程(服务)主要有以下好处:1、可以方便的查看进程的状态2、可以方便的启动、停止、重启、reload进程3、可以方便的配置进程是否随系统启动而启动,并且可以配置复杂的依赖关系(如:在某个服务启动后启动)4、可以方便的指定以某个用户的身份启动等等。service文件一般分为三个部分:Unit用来定义 Uni

2021-12-14 23:16:18 2686

原创 Systemd and sysemctl

系统结构Systemd 的设计目标是为系统的启动和管理提供一套完整的解决方案,具体的结构如上图所示。Systtemd不是一个命令,而是一组命令,这组命令涉及系统管理的多个方面。Systemd的相关命令systemctl#查看版本$ sudo systemctl --version# 重启系统$ sudo systemctl reboot# 关闭系统,切断电源$ sudo systemctl poweroff# CPU停止工作$ sudo systemctl halt# 暂停

2021-12-14 21:03:13 1828

原创 实战探究!C++ 20 标准都发布了哪些重要特性?

目前gcc 10.2可以支持部分C++20标准,编译的时候需要使用编译选项:-std=c++2a待我升级编译器之后分章节详解主要特性的概念、示例。敬请各位关注,干货马上到来Constraints and concepts (约束和概念)在类模板和函数模板编程中,主要用于对模板参数的结束和限制,这种约束和限制发生在编译期,编译错误不在那么晦涩难懂了。在模板编程中,可以限制模板参数的类型或具用某种特性,如:可以限制为整型、数值型、bool型、或必须支持hash特性、或某个类的派生类型等。在C++2

2020-12-23 09:28:13 9910 32

原创 常见的拖垮中小公司技术团队的10宗罪

某人曾说过,“What does not kill me,makes me stronger.”根据周围公司的情况,总结了拖垮中小公司技术团队的主要因素,当然,你也可以使用下面的手段,把你现在的公司拖垮(与本人无关),正所谓术高莫用,年轻人,耗子尾汁:1、外行管内行大部分公司,老板本身不懂技术,有些老板略懂业务,更多的老板是更懂市场,老板找一个会包装自己但没有做过开发的人来管理技术团队,那位说老板不傻,只能说在他懂的范围内不傻,在他不懂的范围内很多老板看不透彻,让一个没有写过一天代码的人管团队会出现什

2020-12-16 18:13:44 13228 43

原创 tmux常用命令及快捷键

tmux常用命令及快捷键最大化 Ctrl+b(我改成了Ctrl+a) 激活控制台;此时以下按键生效 系统操作 ? 列出所有快捷键;按q返回 d 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 D 选择要脱离的会话;在同时开启了多个会话时使用 Ctrl+z 挂起当前会话 r 强制重绘未脱离的会话 s .

2020-11-19 10:20:05 3025

原创 手把手教你配置linux下C++开发工具——vim+ycm(YouCompleteMe),支持基于语义的自动补全和第三方库补全(史上最简单、史上最透彻、史上最全的终极解决方案)

截止到目前,vim稳定版本已经到了8.2+,ycm(YouCompleteMe的简称)最新版本与几年前的安装配置截然不同了。之前网上很多教程也教不得法,生搬硬套,没有讲透彻。所以,才下定决心写一篇自认为史上最简单、史上最全的教程出来。一、准备工作 1、安装python(ycm需要使用python3.6以上的版本,这里选择python3.8.5): 1.1、进入download目录:cd download 1....

2020-10-23 12:57:01 13665 31

原创 没有core文件时定位segfault at 0 ip 的问题(一)

C/C++编写的程序,崩溃后有时不能生成core文件(即使设置了ulimited),所以往往不知道发生了什么事情,生产环境根本不允许研发小朋友去调试,日志有时候看不出问题了。(如果生成了core文件,或通过日志能定位到问题所以,则可略过此文章)。本文章专门针对于没有生成core文件、不能通过日志分析问题的情况首先,写一段测试代码吧,不用怀疑,这段代码肯定是有问题的#include <iostream>#include <cstdio>#include <mem

2020-07-28 18:18:51 4621 1

原创 从U盘安装centos7(史上最简单的终极解决方案)

1、下载最新版本的centos(目前是centos 7.6) https://www.centos.org/download/ 由于我是安装服务器,所以选择了Minimal ISO(只有900多MB)2、制作Centos安装盘(准备一个空白的1GB以上的U盘) 2.1.安装UltraISO 2.2.安装完成后点...

2019-03-10 17:48:46 223252 167

原创 Python3 list 排序函数详解

Python3 list 排序函数详解一、列表的sort排序函数函数原型: list.sort(key=None,reverse=False)函数功能:对原列表进行排序,完成排序后,原列表变为有序列表。默认情况(不传入任何参数时)按字典顺序排序。函数参数:(1)key: 主要是用来进行比较的元素,只有一个参数,具体的函数的...

2018-05-28 18:55:03 40451 7

原创 通过设置gcc的flags来捕获异常

然后,就可以不使用gdb来调试即可打印堆栈等详细信息了。即可实现运行程序时捕获异常的目的。

2024-07-18 16:55:16 70

原创 linux平台方便的获取当前进程名字的几种方法

vim /proc/pid/status #可以获取name。在main函数中使用变量。在main函数中调用。

2024-07-18 10:20:54 196

原创 编译器对C++23的支持程度

详见这里

2024-07-02 14:59:05 270

原创 C++23特性一览

【代码】C++23特性一览。

2024-07-02 14:53:14 1064 2

原创 关闭kylin(麒麟)系统的安全认证(烦人的安全认证)

重启成功后,就关闭了安全认证了~~~~~。增加12行,把13行注释掉。

2024-06-15 12:01:34 770

原创 手把手教你在多个gitlab库之间同步代码(镜像)

gitlab已经非常强大了,不仅可以导入gitlab自身的代码库,还可以导入外部的代码库,如:GitHub、Gitea、Repository by URL等那么,当有多个代码库的时候(比如:一个是主库,用于读写,另一个用于备份),如何做到在多个代码库之间同步代码呢?其实gitlab已经提供了同步代码的功能,无须借助外部工具即可实现代码在多个库之间的同步~~~

2024-06-13 11:38:03 426

原创 cpp.snippet for vim-snippet plugin

【代码】cpp.snippet for vim-snippet plugin。

2024-06-04 13:52:19 114

原创 Linux用户和用户组的操作

用户,用户组

2024-06-04 13:41:10 402

原创 cmake通过PkgConfig查找没有提供cmake的库,并在cmakelists.txt中进行依赖(如:ffmpeg等)

【代码】cmake通过PkgConfig查找没有提供cmake的库,并在cmakelists.txt中进行依赖(如:ffmpeg等)

2024-06-02 22:14:58 115

原创 chmod修改文件权限

【代码】chmod修改文件权限。

2024-05-20 16:13:12 152

原创 how to install gcc13 on ubuntu?

upgrade gcc13 on ubuntu

2024-04-18 08:33:38 165

原创 how to install MongoDB on Ubuntu

mongodb

2024-04-09 14:52:13 110

原创 socat创建虚拟串口示例

socatpty2的串口,并向pty2发送数据,从pty1读取数据了,从而达到了模拟串口通讯的目的。此时就可以使用串口的API打开名为。可以看到在home目录下会生成。此时在终端1上就会显示。/socatpty1和。

2024-01-20 07:00:00 774

原创 强大的socat工具,可创建虚拟串口、在串口/网口间转发数据等,基本上无所不能的工具

socat,一个强大的工具,串口工具

2024-01-20 06:00:00 1159

原创 ubuntu禁用/启用图形界面

重启ubuntu即时入了ubuntu的文本模式(命令行模式)了。重启ubuntu后即又可以进图形界面了。3、重新恢复到图形界面。

2024-01-17 09:58:55 1591

原创 gitlab导入/还原代码仓库(离线导入本地代码仓库及历史提交记录)

已有的代码代码可能托管于GitHubFogBugzGitea等平台,只要你有合适的权限,都可以使用GitLabGitLab提供了详细的指南,所以这里不做赘述。

2024-01-13 19:22:40 707

原创 手把手教你在Ubuntu下建gitlab,试用于Ubuntu20、Ubuntu22、Ubuntu23

一、gitlab说明二、准备工作三、安装1、第一种方法:然后就可以看到下面的界面:完成后的界面如下:就会看到类似下面的界面:查看一下gitlab的运行状态如下图所示:然后输入管理员的用户名(root) \ 密码(详见界面提到的初始密码的存储位,

2024-01-13 17:14:09 710

原创 ubuntu 启用core文件

在当前session下执行。

2024-01-11 17:46:20 800

原创 tcpdump

1、定时生成抓包文件。2、解析.cap文件。

2023-11-10 14:57:06 163

原创 tcpdump显示抓取的数据抱

【代码】tcpdump显示抓取的数据抱。

2023-10-13 16:23:15 185

原创 访问github或其他国外网站有时候很慢,解决方案在这里。

2、按上面的要求配置,并根据自己的需求选择适合自己的内容即可。

2023-08-07 12:05:35 583

原创 升级到python3.10后,遇到的错误: ImportError: cannot import name ‘html5lib‘ from ‘pip._vendor‘

安装完python3.10后,搭配pipenv使用时,可能会遇到。

2023-06-06 09:47:26 2368 18

原创 git reset和git revert的区别

(即:把增加的删除、把删除的加回来,做一次commit的逆运算), git revert commit_id成功之后,会生产一次新的提交,并且commit_id的影响将不会存在于git revert之后的commit,但是在git revert之前的commit中还是能看得到commit_id的改动的(有点乱,。操作是将选择的某一次提交记录 重做,若之后又有提交,提交记录还存在,只是将指定提交的代码给清除掉。是将之前的提交记录全部抹去,将 HEAD 指向自己重置的提交记录,对应的提交记录都不复存在;

2023-05-05 15:27:53 541 1

原创 批量编译py为pyc,并删除py文件

【代码】批量编译py为pyc,并删除py文件。

2023-04-21 11:30:39 349

原创 Http响应状态码大全(看完这篇文章估计你会对HTTP状态码有更深入的了解)

当你的应用程序代码或服务器中的某些部分出现问题时,它将自动返回这些状态代码之一。具有这些状态码的响应可能有或者可能没有响应体,但 304「未修改」是个例外,该响应不得含有响应体。一个特殊的例子是 204,「无内容」。此响应在没有内容返回给客户端时使用,因此该响应不能包含响应体。及以上状态码用于「消息」响应。具有这些状态代码的响应不能带有响应体。及以上状态码用于「客户端错误」响应。这些状态码有一个识别它们的关联名称,但是重要的还是数字。及以上状态码用于「成功」响应。一个例子是 404,用于「未找到」响应。

2023-04-19 14:18:15 2326

原创 systemctl 用法大全

【代码】systemctl 用法大全。

2023-04-13 12:54:12 275

原创 linux下安装mariadb和配置全攻略

然后输入密码就可以以admin用户登录到数据库了。#创建admin账户。

2023-04-01 19:24:27 662

django.pdf

Django Documentation Release 3.1.6.dev

2021-02-18

2020CPP-Summit.rar

2020全球C++及系统软件技术大会PPT合集,包含了C++之父、世界各地开发人员及老们的所有PPT,如:著名的潘爱民老师、陈峰老师、吴咏炜老师等; 考虑到有的同学下载比较慢,所以拆分了多个资源。

2021-01-21

gcc10源码及依赖库第三部分(下载完成第一、二、三部分后,解压即可编译)

包含了gcc10的最新的源码(10.2.0)及依赖库,下载后可以直接编译、安装。一定要下载完三部分才可以解压,然后进行构建 : 详细的构建过程请参见:blog.csdn.net/lianshaohua/article/details/112599062

2021-01-20

gcc10源码及依赖库第二部分(下载完成第一、二、三部分后,解压即可编译)

包含了gcc10的最新的源码(10.2.0)及依赖库,下载后可以直接编译、安装。一定要下载完三部分才可以解压,然后进行构建 : 详细的构建过程请参见:blog.csdn.net/lianshaohua/article/details/112599062

2021-01-20

gcc10源码及依赖库第一部分(下载完成第一、二、三部分后,解压即可编译)

包含了gcc10的最新的源码(10.2.0)及依赖库,下载后可以直接编译、安装。一定要下载完三部分才可以解压,然后进行构建 : 详细的构建过程请参见:blog.csdn.net/lianshaohua/article/details/112599062

2021-01-20

xpub_xsub.rar

基于zmqpp接口实现的ZMQ_XSUB、ZMQ_XPUB模式,xpub端发布消息,xsub端订阅消息(xsub通过send接口订阅topic,这一点与sub不同)

2020-11-05

正三角形代码.rar

用python的几行代码实现在控制台输出一个正三角形,比较简单的一个习题,但是对于思考还是很有帮助的

2020-11-04

client_server.rar

基于zmqpp实现的ZMQ_CLIENT和ZMQ_SERVER模式,可编译直接运行,即可见到效果,client和server模式目前还在DRAFT阶段,稳定后会在正式版本支持的。

2020-11-04

pub_sub.rar

基于zmqpp实现的zeromq的publish-subscribe模式,实现了一发多收的功能,同时sub端可以订阅自己指定的topic(序中支持了三种topic的订阅)

2020-11-04

req_rep.rar

基于zmqpp的zeromq的请求-响应代码,最简单的模式,也是zeromq最脆弱的模式,必须遵循”发一次请求,接收一次响应“的规则 ,否则程序将陷入无限的等等中;

2020-11-04

find_package_simple.rar

find_package module模式的示例代码,包含了依赖库的构建文件、main的构建文件、Findxxx.cmake的查找文件

2020-09-10

vimrc(C++IDE,YCM)

安装了多种插件,如:ctrlp、ycm、fzf、vim-snippets、wm。 下载后可以直接使用(ycm需要安装,安装过程详见我的博客:https://blog.csdn.net/lianshaohua/article/details/108225916)

2020-09-08

vim的配置文件vimrc

vimrc的模板,对vim进行了大量的配置,安装了十几个插件,把vim打造成了具有智能提示、智能补全功能的IDE;其中,ycm插件的安装可参见我的博客

2020-09-03

multi_cast.rar

linux平台下面的,基于udp的组播示例,包含了发送和接收示例代码,还有CMakeLists.txt文件,下载后可直接编译运行

2020-09-01

(cmake最全的书)cmake.pdf

cmake大全,详细介绍了cmake的安装、配置、使用;可谓是不可多得好书,网上很多只介绍了一部分,这本书从基础到高级,都有介绍

2020-08-26

Visual Assist X.rar

microsoft visual studio 的visual assist X助手,支持vs2019

2020-08-18

kline.rar(python源代码)

使用python免费获取证券、数据货币的k线数据,具体的做法详见kinke.rar中的py文件,代码相对来说简单,效率非常之高

2020-08-04

centos7的yum源

centos7的yum源,下载后解压,然后放到/etc/yum.repo.d/目录,然后执行:yum clean && yum makecache命令,即可使用yum install安装

2019-02-20

基于boost的序列化与反序列化

1、包含文件和二进制两种序列化的方式 2、支持类的序列化和STL容器的序列化 3、支持序列化的流自定义(示例中使用的是std::stringstream,也可以使用其他的流)

2018-09-07

3DES加密算法C++实现

1、实现了3DES功能的C++代码 2、支持多个key输入、支持ECB、CBC填充模式 3、不是.exe程序,是代码段;

2012-01-31

模拟生产者/消费者问题

用C#实现生产者和消费者问题: 1、用线程实现 2、详解使用了同步与互斥 3、引例能达到举一反三的作用,可以解决工作中很多与线程有关的问题

2009-11-13

可停靠的窗口

通过使用开源的WeifenLuo.WinFormsUI.Docking.dll,成功的创建出了类似于VS2005的可停靠窗口,个人感觉非常的酷,当然也非常的好用,能记住您当前窗口的个数及们置状态,下次启动自动加载......

2008-05-30

Hashtable的使用

Hashtable的基本用法,遍历等操作

2008-05-26

异形窗体的实现

用代码/图片实现异形窗体,图片的实现稍稍慢一些

2008-05-26

递归选中TreeView当前结点的所有子结点

几行简单代码,雕虫小技,但可以演生出一些其它功能来

2008-05-26

SaveTreeNodesToXML

把Treeview的结点保存为XML文件并从XML文件生成树结点 (有点过时了。。。。。。请大家三思下载,由于对我来讲太简单再加上工作忙所以也没有时间更新,对不起!)

2007-08-15

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

TA关注的人

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