自定义博客皮肤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、数学

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

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

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

2022-11-05 12:03:23 4371

原创 netstat 命令详解

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

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

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

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

2022-02-23 14:11:43 4020

原创 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 654

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

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

2021-12-14 23:16:18 2987

原创 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 2081

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

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

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

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

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

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

原创 tmux常用命令及快捷键

Ctrl+a激活控制台;此时以下按键生效?列出所有快捷键;按q返回d脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出c创建新窗口关闭当前窗口数字键切换至指定窗口p切换至上一窗口n切换至下一窗口l在前后两个窗口间互相切换w通过窗口列表切换窗口重命名当前窗口;这样便于识别修改当前窗口编号;相当于窗口重新排序f在所有窗口中查找指定文本”(我改成了s,与vim一致)

2020-11-19 10:20:05 3794 1

原创 手把手教你配置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 14626 31

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

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

2020-07-28 18:18:51 4812 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 225681 167

原创 Python3 list 排序函数详解

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

2018-05-28 18:55:03 40656 6

原创 c++code coverage tools working with cmake

【代码】c++code coverage tools working with cmake。

2025-03-05 16:03:14 280

原创 什么是SSL及SSL的工作流程

SSL(Secure Sockets Layer,安全套接层)是一种保护互联网通信安全的加密协议,用于确保数据在客户端和服务器之间传输时的保密性、完整性和身份验证。它已被TLS(Transport Layer Security,传输层安全协议)取代,但很多场景仍习惯称其为SSL。数据加密:防止数据在传输过程中被窃听。数据完整性:防止数据被篡改。身份验证:确保通信方的身份可信。

2025-01-17 14:41:51 1019

原创 SSL/TLS的数据压缩机制

在现代TLS/SSL实现中,数据通常不会在传输前由TLS协议本身进行压缩。如果需要压缩,通常由应用层负责(例如HTTP压缩),而不是SSL/TLS协议本身。

2025-01-17 14:38:09 908

原创 The difference between exit/abort/_Exit/return/quick_exit

【代码】The difference between exit/abort/_Exit/return/quick_exit。

2025-01-14 17:49:50 751

原创 Step-by-step guide to learn c++

Learning C++ can be both exciting and rewarding. Here’s a step-by-step guide and recommendations for books to help you get started:“Programming: Principles and Practice Using C++” by Bjarne Stroustrup“C++ Primer (5th Edition)” by Stanley B. Lippman, Josée

2025-01-14 17:44:40 748

原创 如何正确的使用AI

正确使用人工智能 (AI) 需要根据你的需求、目标和所使用的AI类型来调整方法。

2025-01-13 15:40:11 549

原创 The BR(Brotli) Compressed Data Format

Purposefilters.. Scope+--------+|76543210|+--------+0 1^ ^| |unsigned.block.duplicate.copy.(1).

2025-01-13 15:16:10 4121

原创 Broti(BR) Algorithm Overview

Brotli is a lossless compression algorithm optimized for web use. It is particularly effective for text-based data like HTML, CSS, and JavaScript, offering high compression ratios with efficient decompression. Developed by Google, Brotli combines modern co

2025-01-13 11:24:16 677

原创 C++26目前常见特性

【代码】C++26目前常见特性。

2025-01-10 09:11:51 993

原创 C++ and Rust之争,谁才是王者

【代码】C++ and Rust之争,谁才是王者。

2025-01-10 09:06:22 764

原创 boost multi_index_container详解(这一篇就够了)

有序STL容器无法提供此功能,这通常会导致不优雅的变通方案:例如,考虑确定ID在[0,100]范围内的员工的问题。的每个索引都使用自己的迭代器类型,这些类型与其他索引的迭代器类型不同。此外,细心的程序员必须考虑到搜索区间的下界和上界必须兼容:例如,如果下界是200,上界是100,则上面代码生成的迭代器。任何类型都可以用作索引的标记,尽管通常会选择与其关联的索引描述性名称。的类似物,事实上,它们确实复制了其接口,尽管 Boost.MultiIndex 的一般约束导致了一些细微的差异。

2025-01-09 17:44:14 1459

原创 boost::multi_index_container 详解

【代码】boost::multi_index_container 详解。

2025-01-09 08:30:00 796

原创 用c/c++实现deflate的压缩

【代码】用c/c++实现deflate的压缩。

2024-12-30 15:45:00 257

原创 用c/c++实现gzip压缩

【代码】用c/c++实现gzip压缩。

2024-12-30 11:08:32 218

原创 tcpdump Permission denied解决方法大全

【代码】tcpdump Permission denied解决方法大全。

2024-12-30 09:30:00 369

原创 zlib压缩格式详细说明

【代码】zlib压缩格式详细说明。

2024-12-30 09:00:00 174

原创 gzip格式详细说明(这一篇就够了)

【代码】gzip格式详细说明(这一篇就够了)

2024-12-30 08:30:00 971

原创 How to Generate a Self-Signed Certificate Using OpenSSL?

https://www.digitalocean.com/community/tutorials/how-to-create-a-self-signed-ssl-certificate-for-apache-in-ubuntu-22-04https://tecadmin.net/step-by-step-guide-to-creating-self-signed-ssl-certificates/https://www.ssldragon.com/how-to/openssl/create-self-s

2024-12-23 16:04:10 125

原创 my tmux key bindings

【代码】my tmux key bindings。

2024-12-12 14:19:17 122

原创 tmux default keys

bind-key -T prefix C-b send-prefixbind-key -T prefix C-o rotate-windowbind-key -T prefix C-z suspend-clientbind-key -T prefix Space next-layoutbind-key -T prefix ! break-pa

2024-12-12 13:48:24 230

原创 Order evaluation Rules in C++17

【代码】Order evaluation Rules in C++17。

2024-09-19 09:45:00 680

原创 The concept of the Sequenced before, also including the 20 important rules

This is。

2024-09-19 09:00:00 1455

原创 The concept of the Sequence point

sequencing。

2024-09-18 09:45:00 888

原创 The concept of the Happened-before

【代码】The concept of the Happened-before。

2024-09-18 09:00:00 611

原创 A Walkthrough Using Acquire and Release Fences

We’ll take the example from my previous post and modify it to use C++11’s standalone acquire and release fences. Here’s the SendTestMessage function. .Here’s the function. . .Now, if happens to see the write which performed on , then . Again, strictly

2024-09-12 09:00:00 1892

原创 specify which reordering operations are permitted and which are not

【代码】specify which reordering operations are permitted and which are not with std::atomic_thread_fence。

2024-09-11 10:00:00 864

原创 produce and consumer based on the std::thread_fence

【代码】produce and consumer based on the std::thread_fence。

2024-09-11 09:00:00 381

the tmux configuration file

tmux configuration file

2024-11-11

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.youkuaiyun.com/lianshaohua/article/details/112599062

2021-01-20

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

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

2021-01-20

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

包含了gcc10的最新的源码(10.2.0)及依赖库,下载后可以直接编译、安装。一定要下载完三部分才可以解压,然后进行构建 : 详细的构建过程请参见:blog.youkuaiyun.com/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.youkuaiyun.com/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关注的人

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