C/C++、网络协议、网络安全类文章汇总

🛸 文章简介

  • 本文章主要对本博客的所有文章进行了汇总,方便查找。
  • 内容涉及C/C++编程,CMake、Makefile、Shell脚本,GUI编程框架MFC和QT,Git版本控制工具,网络协议基础知识,网络安全领域相关知识,Windows、Linux和Mac平台软件打包流程,一些实用的C/C++开源框架。
  • 对于访问量过万的文章进行了 🏆 标记。

🛸 文章汇总

🦖C/C++编程

  • 🦖 C++ 11新特性之std::function类模板与std::bind绑定器介绍
  • 🦖 C++三大特性之多态
  • 🦖 c++函数模板与类模板
  • 🦖 指针数组与数组指针
  • 🦖 vector容器中size与capacity的区别
  • 🦖 vector中reserve与resize的区别
  • 🦖 visual studio 15 无法卸载(安装时发生严重错误)
  • 🦖 C++字符串类std::string介绍
  • 🦖 静态链接和动态链接 – 静态加载(隐式调用)和动态加载(显式调用)
  • 🦖 不同系统和架构下的宏定义名称
  • 🦖 Dump文件的生成以及使用WinDbg静态分析
  • 🦖 使用WinDbg进行动态调试
  • 🦖 C++ UML 类图介绍与设计
  • 🦖 C++智能指针 shared_ptr 和 unique_ptr
  • 🦖 C++ 多线程std::thread以及条件变量和互斥量的使用
  • 🦖 C++11语法之Lambda表达式介绍
  • 🦖 C++四种类型转换操作符 static_cast、dynamic_cast、reinterpret_cast、const_cast介绍
  • 🦖 C++ STL之容器介绍(vector、list、set、map)
  • 🦖 C++ STL之算法介绍

🦕C/C++开源框架

  • 🦕 C++高性能日志库spdlog使用指南 🏆
  • 🦖 c语言json库parson的介绍和使用
  • 🦕 C++ json库介绍 - json11的使用
  • 🦕 轻量级c语言开源日志库log.c介绍 - 实现不同级别和参数化日志打印
  • 🦕 C++日志库plog使用指南
  • 🦕 使用c语言libexpat开源库解析XML数据
  • 🦕 通过C++开源库TinyXML2解析和生成XML数据
  • 🦕 C/C++二维码生成库qrencode编译与使用
  • 🦕 使用OpenCppCoverage统计代码覆盖率
  • 🦕 使用RapidJson开源库解析和生成Json数据
  • 🦕 libcurl开源库的编译与使用全攻略
  • 🦕 使用http-parser解析http请求和响应数据
  • 🦕 C语言开源库iniparser解析ini文件

🐦CMake

  • 🐦 cmake实现宏控制
  • 🐦 cmake之add_dependencies
  • 🐦 CMake简单案例
  • 🐦 CMake编译安装、生成可执行程序、生成静态动态库以及静态动态库的链接
  • 🐦 CMake多行注释以及通过Message打印不同级别日志
  • 🐦 CMake生成Debug和Release目标程序时的一些配置
  • 🐦 cmake之find_package命令详解
  • 🐦 CMake install如何安装目标、文件、目录和安装时执行代码(付费文章)

🦅 Makefile

  • 🦅 Makefile简介及如何指定头文件和库文件 🏆
  • 🦅 makefile实现大型项目编译部署 (付费文章)

🐳QT

  • 🐳 QT之QTableWidget控件 🏆
  • 🐳 QT实现线程操作
  • 🐳 QT程序打包发布
  • 🐳 使用QT绘制折线图
  • 🐳 QLabel中文乱码问题
  • 🐳 QT中使用正则表达式检测IP和端口
  • 🐳 setAttribute(Qt::WA_DeleteOnClose) 导致程序崩溃问题
  • 🐳 QT两种方法实现定时器
  • 🐳 QT实现发送get和post请求
  • 🐳 QT自定义控件
  • 🐳 QT信号与槽介绍-自定义信号与槽的实现以及信号重载
  • 🐳 Visual Studio 2015 + cmake编译QT5程序
  • 🐳 Windows/Linux(命令、安装包和源码安装)平台各个版本QT详细安装教程
  • 🐳 Qt实现TCP调试助手 - 简述如何在Qt中实现TCP多并发
  • 🐳 Qt中使用QNetworkAccessManager类发送https请求时状态码返回0
  • 🐳 QT消息机制和事件 - 鼠标事件、键盘按下事件、绘图事件、定时器事件处理
  • 🐳 Qt实现json数据的生成、解析、修改和删除

🐋MFC

  • 🐋 MFC标签页 Tab Control控件介绍
  • 🐋 MFC常用控件使用(文本框、编辑框、下拉框、列表控件、树控件)
  • 🐋 MFC编程入门级教程

🐝网络安全

  • 🐝 对称加密与非对称加密算法 🏆

  • 🐝 数字证书简介 🏆

  • 🐝 OpenSSL编译安装和命令行工具介绍 🏆

  • 🐝 浅谈数字信封

  • 🐝 使用windows提供的API判断防火墙开启状态

  • 🐝 X509数字证书编码格式和扩展名

  • 🐝 消息摘要算法与消息认证码简介

  • 🐝 数字签名技术简介

  • 🐝 使用windows钩子(HOOK)实现DLL注入

  • 🐝 ukey设备以及国密SKF、CSP和PKCS#11规范介绍

  • 🐝 构建网络信息安全的中国方案 - 国密SSL/TLCP协议介绍以及国密Nginx服务器部署

  • 🐝 基于OpenSSL的SSL/TLS加密套件全解析

  • 🐝 网络安全之DDos攻击原理与防御

  • 🐝 网络探测工具Nmap介绍

  • 🐝 使用hping3网络工具构造TCP/IP数据包和进行DDos攻击

  • 🐝 密码学基础之ASN.1编码

  • 🐝 跨域问题分析以及解决方案

  • 🐝 OpenSSL之API编程 - C/C++实现摘要算法和Base64编解码算法 (付费文章)

  • 🐝 OpenSSL之API编程 - C/C++实现AES、DES、3DES、SM4对称加密算法(付费文章)

  • 🐝 WMI技术介绍以及使用WMI技术获取系统信息(付费文章)

  • 🐝 OpenSSL之API编程 - C/C++实现RSA非对称加密算法(付费文章)

  • 🐝 PAC代理技术详解以及PAC代理无法开启问题(付费文章)

  • 🐝 SM2加密算法的公私钥和密文格式以及不同编程语言之间无法互相解密问题分析(付费文章)

  • 🐝 Tongsuo(铜锁)项目介绍 - 实现国密SSL协议(付费文章)

  • 🐝 PKCS#7签名介绍与代码实现(付费文章)

  • 🐝 使用openssl库实现MD5加密

🕊️ 网络协议

  • 🕊️ websocket协议简介 🏆

  • 🕊️ 使用Wireshark抓包分析TCP协议 🏆

  • 🕊️ 网络分析器Wireshark过滤器设置 🏆

  • 🕊️ linux下使用tcpdump抓取数据包 🏆

  • 🕊️ TCP状态转换以及TIMEWAIT和FIN_WAIT_2状态

  • 🕊️ HTTP协议详解 - 通过C++实现HTTP服务剖析HTTP协议

  • 🕊️ 加密通信的基础 - 全面解读SSL/TLS协议

  • 🕊️ 桥接模式与NAT模式的区别以及设置静态IP

  • 🕊️ 如何使用wireShark的追踪流功能抓取并还原文件

  • 🕊️ IO多路复用之select/epoll模型

  • 🕊️ SSL/TLS警告协议详解以及常见握手失败消息的含义与解决方案

🐢GIT

  • 🐢 git合并分支时如何解决冲突 🏆
  • 🐢 使用git restore --staged撤销你在暂存区的提交 🏆
  • 🐢 git pull时报错:Your local changes to the following files would be overwritten by merge 🏆
  • 🐢 git常用命令记录
  • 🐢 git提交代码到同一分支时冲突的解决
  • 🐢 git工作流程简介
  • 🐢 使用git restore命令撤销你在工作区的修改
  • 🐢 使用git reset回退版本
  • 🐢 使用git revert回退版本
  • 🐢 使用git submodule命令创建子模块
  • 🐢 Centos安装GitLab教程
  • 🐢 GitLab CI/CD实现项目自动化部署

🐣 软件打包

  • 🐣 inno setup打包教程-入门篇
  • 🐣 使用inno setup打中文安装界面的安装包
  • 🐣 linux平台制作deb包
  • 🐣 Mac下安装pkg包报错:安装器遇到了一个错误,导致安装失败。请联系软件生产企业以获得帮助。
  • 🐣 使用inno setup制作静默安装包
  • 🐣 Inno Setup打包实现安装自启和开机自启
  • 🐣 Mac平台下如何制作pkg安装包以及rpath设置
  • 🐣 RPM包详解以及如何制作RPM包
  • 🐣 使用alien工具转deb为rpm包时报错:Use of uninitialized value in lc at /usr/share/perl5/Alien/Package/Deb.pm
  • 🐣 提升软件安全性 - 运用Inno Setup打包技术实现序列号与机器绑定
  • 🐣 inno setup打包脚本中调用系统和自定义DLL库

🦘 实用框架

  • 🦘 Jenkins从配置到实战(一) - 实现C/C++项目自动化构建
  • 🦘 Docker介绍以及实战教程
  • 🦘 Jenkins从配置到实战(二) - Jenkins的Master-Slave分布式构建
  • 🦘 nginx介绍 -下载安装以及如何实现http和https服务
  • 🦘 Nginx日志功能介绍
  • 🦘 Nginx + fastCGI 实现动态网页部署
  • 🦘 内网穿透技术 - 带你玩转Ngrok和NATAPP
  • 🦘 Nginx实现反向代理和负载均衡

🐍 OpenCV

  • 🐍 opencv训练自己的模型,实现特定物体的识别 🏆
  • 🐍 opencv实现人脸识别(c++实现) 🏆
  • 🐍 使用opencv和dlib库(C++代码)实现人脸活体检测(眨眼、张嘴、摇头检测)(付费文章)

🦎 脚本

  • 🦎 shell脚本介绍

🐊 数据库

  • 🐊 MySql数据库基础篇-增删改查
  • 🐊 SQLite数据库使用指南以及相关API编程

🐡 算法

  • 🐡 图解快速排序

🐺 视频动画

  • 🐺 PR视频剪辑软件教程🏆
  • 🐺 PR视频剪辑教程–视频特效和转场
  • 🐺 MAYA教程之建模基础命令介绍
  • 🐺 MAYA教程之模型的UV拆分与材质介绍
  • 🐺 音视频(一)之使用FFMpeg工具推流并搭建流媒体服务器Nginx + RTMP
  • 🐺 音视频(二)之使用FFMpegSDK在C++代码中进行推流
  • 🐺 MAYA教程之灯光与渲染

🦂 操作系统

  • 🦂 windows注册表写入与读取
  • 🦂 windows线程之CreateThread与_beginthreadex区别详解
  • 🦂 windows线程同步与互斥
  • 🦂 Linux下记录崩溃信息
  • 🦂 Linux常用命令记录
  • 🦂 国产操作系统介绍和安装
  • 🦂 Windows编程模型-消息循环机制
  • 🦂 wchar_t*(LPWSTR)与char*(LPSTR)相互转换

🕷️ 逆向分析

  • 🕷️ nm命令如何查看目标文件符号表
  • 🕷️ 通过strings二进制文件分析工具排查 version ‘GLIBC_2.25‘ not found 报错

🐚 其它

  • 🐚 深度剖析六大国产CPU 🏆

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/956980.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【大模型】ChatGPT 高效处理图片技巧使用详解

目录 一、前言 二、ChatGPT 4 图片处理介绍 2.1 ChatGPT 4 图片处理概述 2.1.1 图像识别与分类 2.1.2 图像搜索 2.1.3 图像生成 2.1.4 多模态理解 2.1.5 细粒度图像识别 2.1.6 生成式图像任务处理 2.1.7 图像与文本互动 2.2 ChatGPT 4 图片处理应用场景 三、文生图操…

后端:MyBatis

文章目录 1. MyBatis1-1. Mybatis 工具类的封装1-2. Mybatis 通过集合或实体类传递参数-实现插入数据(增)1-3. MyBatis 实现删除数据(删)1-4. MyBatis 实现修改数据(改)1-5. MyBatis 实现查询数据(查) 2. MyBatis 配置文件中的一些标签和属性2-1.environments标签2-2. dataSour…

将 AzureBlob 的日志通过 Azure Event Hubs 发给 Elasticsearch(1.标准版)

问题 项目里使用了 AzureBlob 存储了用户上传的各种资源文件,近期 AzureBlob 的流量费用增长很快,想通过分析Blob的日志,获取一些可用的信息,所以有了这个需求:将存储账户的日志(读写,审计&…

数字化时代,传统代理模式的变革之路

在数字化飞速发展的今天,线上线下融合(O2O)成了商业领域的大趋势。这股潮流,正猛烈冲击着传统代理模式,给它带来了新的改变。 咱们先看看线上线下融合现在啥情况。线上渠道那是越来越多,企业纷纷在电商平台…

【AI | pytorch】torch.polar的使用

一、torch.polar的使用 torch.polar 是 PyTorch 中用来生成复数张量的一个函数,但它与数学中的复数表达式 ( z re^{i\theta} ) 是等价的。 具体来说,torch.polar(abs, angle) 接受两个实数张量参数: abs:表示复数的模长&#…

LeetCode 110.平衡二叉树

题目描述 给定一个二叉树,判断它是否是平衡二叉树。 示例 1: 示例 2: 输入:root [1,2,2,3,3,null,null,4,4] 输出:false 示例 3: 输入:root [] 输出:true 提示: …

数据结构(Java版)第四期:ArrayLIst和顺序表(上)

目录 一、顺序表 1.1. 接口的实现 二、ArrayList简介 2.1. ArrayList的构造 2.2. ArrayList的常见操作 2.3. ArrayList的扩容机制 三、ArrayList的具体使用 3.1. 洗牌算法 3.2. 杨辉三角 一、顺序表 上一期我们讲到过,顺序表本质上和数组是差不多的&#…

阿里云 Serverless 助力盟主直播:高并发下的稳定性和成本优化

在直播场景中,阿里云 Serverless 应用引擎 SAE 提供的无缝弹性伸缩与极速部署能力,确保直播间高并发时的流畅体验,降低了我们的运营成本,简化了运维流程。结合阿里云云原生数据库 PolarDB 的 Serverless 能力,实现了数…

【机器学习实战入门】基于深度学习的乳腺癌分类

什么是深度学习? 作为对机器学习的一种深入方法,深度学习受到了人类大脑和其生物神经网络的启发。它包括深层神经网络、递归神经网络、卷积神经网络和深度信念网络等架构,这些架构由多层组成,数据必须通过这些层才能最终产生输出。…

Qt之QDjango-db的简单使用

QDjango是一款由C编写、依托于Qt库的Web开发框架,其设计理念受到了广受欢迎的Python框架Django的影响。这个项目旨在提供一个高效、灵活且易于使用的工具集,帮助开发者构建高质量的Web应用。其项目地址: https://gitcode.com/gh_mirrors/qd/qdjango&…

[2025分类时序异常检测指标R-AUC与VUS]

梳理了一下分类中常见的指标,这些指标与时序异常检测中新提出的A-RUC与VUS之间的关系 真正例(True Positive,TP): 被正确识别为正样本的数量。真负例(True Negative,TN): 被正确识别为负样本的数量。假正例(False Positive ,FP): 被错误识为正样本数量假负例(Fals…

python3GUI--仿崩坏三二次元登录页面(附下载地址) By:PyQt5

文章目录 一.前言二.预览三.实现方案1.实现原理1.PyQt52. 具体实现 2.UI设计1.UI组件化、模块化2.UI设计风格思路 3.项目代码结构4.使用方法3.代码分享1.支持跳转网页的QLabel组件2.三角形ICON按钮 四.总结 大小:33.3 …

STM32 FreeRTOS中断管理

目录 FreeRTOS的中断管理 1、STM32中断优先级管理 2、FreeRTOS任务优先级管理 3、寄存器和内存映射寄存器 4、BASEPRI寄存器 5、FreeRTOS与STM32中断管理结合使用 vPortRaiseBASEPRI vPortSetBASEPRI 6、FromISR后缀 7、在中断服务函数中调用FreeRTOS的API函数需注意 F…

如何在idea中搭建SpringBoot项目

如何在idea中快速搭建SpringBoot项目 目录 如何在idea中快速搭建SpringBoot项目前言一、环境准备:搭建前的精心布局 1.下载jdk (1)安装JDK:(2)运行安装程序:(3)设置安装…

Linux:expect spawn简介与用法

一、背景 大家在使用linux系统的很多时候,都用linux指令来实现一些操作,执行特定的job,有时一些场景中需要执行交互指令来完成任务,比如ssh登录这个命令大家一定很熟悉: ssh-keygen -t rsa # 以及 ssh-copy-id -i /hom…

服务器硬盘RAID速度分析

​ 在现代数据中心和企业环境中,服务器的存储性能至关重要,RAID(独立磁盘冗余阵列)技术通过将多块硬盘组合成一个逻辑单元,提供了数据冗余和性能优化,本文将详细探讨不同RAID级别对服务器硬盘速度的影响&am…

Android开发与网络请求

目标:快速开发一个安卓页面(用户登录&跳转) 抓包就是在后端逻辑与API之间截取信息。 1.安卓UI和后台逻辑 1.1 安卓UI 将activity_main.xml文件中的代码替换后,将会得到上面的UI界面 <?xml version="1.0" encoding="utf-8"?> <Linear…

【Linux】利用‘shell脚本’快速查看linux服务器的基本信息

一、脚本目的 为了方便&#xff0c;当拿到一台linux服务器的时候&#xff0c;我们应首先了解服务器的硬件、操作系统信息。俗话说“工欲善其事必先利其器” 只有熟悉了自己的武器&#xff0c;才能更好的发挥武器的威力。所以写了一个shell脚本&#xff0c;方便快速获取服务器C…

Solana 套利机器人原理

引言 加密货币的交易世界中&#xff0c;套利是利用市场价格差异进行无风险获利的一种策略。随着 DeFi&#xff08;去中心化金融&#xff09;的快速发展&#xff0c;套利机会屡见不鲜&#xff0c;尤其是在高速、高效能的区块链上&#xff0c;如 Solana。这些区块链通过提供低交易…

麦田物语学习笔记:制作[SceneName]Attribute特性

基本流程 因为在现有的项目中,像开始场景的切换或者Telepot组件都需要手动输入场景名,有时还可能键入出错,而该特性能用选择的方式去解决这一问题 1.代码实现 SceneNameDrawer.cs //参数绘制 using UnityEditor; using UnityEngine; #if UNITY_EDITOR [CustomPropertyDrawer(…