- 博客(32)
- 资源 (1)
- 收藏
- 关注
原创 Linux C++实现进程间通信——消息队列(结合protobuf)
消息队列本质是一个存储消息的链表,这些消息具有特定的格式及特定优先级。消息队列是随内核持续的,只有在内核重启或删除一个消息队列时,该消息队列才会真正地被删除。msgflg为0表示当消息队列满时,msgsnd将会阻塞,直到消息能写进消息队列。msgflg为0表示当消息队列满时,msgsnd将会阻塞,直到消息能写进消息队列。msg_sz为要发送消息的大小,不含消息类型占用字节。msg_sz为要发送消息的大小,不含消息类型占用字节。会产生两个可执行文件,开两个终端分别运行就可以了。下面简单讲解一下代码。
2023-03-20 16:27:20
1398
1
原创 fastdds学习——fastdds+protobuf 试图用protobuffers代替idl文件
fastdds+protobuf,试图用protobuf代替idl
2023-03-13 16:12:54
2176
8
原创 MYSQL设置密码时显示Failed! Error: SET PASSWORD has no significance for user ‘root‘@‘localhost‘ as the authe
Mysql设置密码时出现Failed Error
2022-06-03 16:59:16
28700
7
原创 C++ 实现基数排序
基数排序是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。由于整数也可以表达字符串(比如名字或日期)和特定格式的浮点数,所以基数排序也不是只能使用于整数。基数排序基于计数排序。统计待排序数组中最长位数。int maxBit(vector<int> vec) { //返回vector中最长的元素有几位 int max = vec[0]; for (int i = 1; i < vec.size(); i++) { .
2022-01-29 17:31:34
3150
原创 C++ 桶排序
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录桶排序一、桶排序是什么?二、实现思路1. 分组2. 桶内排序3. 合并桶排序查了很多文章,桶排序着实有点复杂,记录一下学习桶排序的过程。一、桶排序是什么?桶排序(又称箱排序)是一种基于分治思想、效率很高的排序算法,理想情况下对应的时间复杂度为 O(n)。二、实现思路1. 分组将待排数据进行分组,如下图,将这些数组按范围分到各个桶中,此时每个桶中的数据是无序的,我们还需要为每个桶中的数据排序。每个桶中的排序算法选择至
2022-01-29 11:24:36
3532
原创 mininet——简单的路由实验
mininet——简单的路由实验参考:(13条消息) mininet多网段主机路由实验配置_caojing1997的博客-CSDN博客拓扑:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-crI9Gf0n-1629186433147)(C:\Users\10980\AppData\Roaming\Typora\typora-user-images\image-20210817154325150.png)]Python代码:我的文件名是routetest.py#!/u
2021-08-17 15:51:01
535
原创 Ubuntu下实现 mininet重放pcap流量
mininet重放pcap流量参考:https://blog.csdn.net/yyd19981117/article/details/114301857修改pcap的源和目的地址打开test1.pcap查看是否修改成功源地址都被改成了10.0.0.11,目的地址被改为了10.0.0.13,我们的目标是在mininet上建立这两台主机的拓扑,然后实现这个pcap中流量的重放修改主机IP地址为pcap里面的地址,h1为源主机,h2为目的主机-查看h2,修改成功在主机h1上输入
2021-08-09 17:38:34
796
3
原创 Nmap六种状态解读
NMAP六种端口状态解读Nmap是一种用来发现网络中主机和服务的安全扫描工具,从而能够产生一个网络“地图”,为了完成这个功能,nmap会向每个目标主机发送特定的报文,从而从目标主机返回报文(或者无返回报文)来判断目标主机的属性(如:开放的端口,所使用的操作系统,操作系统的类型等信息)本文主要讨论nmap对端口进行扫描中,当nmap向目标主机发送报文并根据返回报文从而认定端口的6种状态的含义(注意:这六种状态只是namp认为的端口状态,例如:有些主机或者防火墙会返回一些不可靠的报文从而妨碍nmap对端口开
2021-04-08 16:24:18
1231
原创 Packet Tracer——交换机的Telnet远程登陆配置
实验目标掌握采用Telnet方式配置交换机的方法。实验背景第一次在设备机房对交换机进行了初次配置后,你希望以后在办公室或出差时也可以对设备进行远程管理。现要在交换机上做适当配置。技术原理配置交换机的管理IP地址(计算机的IP地址与交换机管理IP地址在同一个网段):在2层交换机中,IP地址仅用于远程登录管理交换机,对于交换机的运行不是必需,但是若没有配置管理IP地址,则交换机只能采用控制端口console进行本地配置和管理。**默认情况下,交换机的所有端口均属于VLAN1,VLAN1是交换机自
2021-02-06 17:19:51
3249
原创 Packet Tracer学习——常用命令
用户模式 Switch>特权模式 Switch#全局配置模式 Switch(config)#端口模式 Switch(config-if)#enable 进入特权模式(一般简写为en)config t 进入全局配置模式interface fa 0/1 进入交换机某个端口视图模式exit 返回到上级模式end 从全局以下模式返回到特权模式快捷指令帮助信息(如
2021-02-06 15:12:48
2199
转载 端口扫描
一 摘要 端口是个网络应用中很重要的东西,相当于“门”。二 什么是端口端口在计算机网络中是个非常重要的概念,他不是硬件,不同于计算机中的插槽,可以说是个软插槽。如果有需要,一台计算机中可以由上万个端口。 端口是由计算通信协议TCP/IP协议定义的。其中规定,用IP地址和端口作为套接字,它代表TCP链接的一个连接端,一般称为socket,具体来说,就是用[ip:端口]来定位一台主机中的进程。可以做这样的比喻,端口相当于两台计算机进程间的大门,可随便定义,其目的只是为了让两台计算机能找到对方
2021-01-19 15:55:20
313
原创 shell编程——参数传递
脚本内获取参数的格式为:$n。n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……$* 与 $@ 区别:相同点:都是引用所有参数。不同点:只有在双引号中体现出来。假设在脚本运行时写了三个参数 1、2、3,,则 " * " 等价于 “1 2 3”(传递了一个参数),而 “@” 等价于 “1” “2” “3”(传递了三个参数)看起来没什么区别~再看下面这例子:...
2020-08-21 15:42:42
160
原创 360随身wifi+Wireshark 对手机应用抓包
首先你需要拥有一个360随身wifi注意它是一个硬件,不是360软件自带的那个免费wifi将其插入到电脑上,电脑本身一定要联网,我电脑连接的是家里的无线网如果你电脑里有360安全卫士,插进电脑之后会自动建立热点,然后用手机连接这个热点打开网络和共享中心,点击WLAN2进入下面这个界面点击属性把这一项勾上!这很重要!点击确定以管理员权限运行wireshark请确定你的手机连上了360随身wifi开的热点~wireshark里有个名称为WLAN2的网卡,这个捕获的就是手机的流量.
2020-07-27 09:10:20
5256
4
原创 Format-String Vulnerability Lab 格式化字符串漏洞 (shellcode写进环境变量)
// vul.c/* * 如果获得环境变量的程序和攻击的程序的文件名长度不一样,环境变量的地址 * 会发生偏移。因此,要么令两个程序的文件名长度相等(推荐),要么考虑偏 * 移来计算环境变量地址。 * gcc -z execstack -o got got.c*/#include <stdio.h>#include <string.h>int main...
2019-01-17 16:41:57
1921
原创 客户端服务器端通信-Socket网络编程
简单的 Socket 网络编程实验目的了解相关网络协议的基本原理和工作流程;掌握使用 Socket 进行网络通信的方法;体会客户机、服务器交互模式。实验任务1.通过调用 Socket 相关函数实现网络通信;2. 实现界面系统和后台通信系统的协同配合;3. 回顾常用控件和 GDI 对象的使用方法;4. 感受 MFC 下多线程的基本用法。实验设备个人 PC,Windows 操...
2019-01-16 18:08:31
901
原创 Format String Vulnerability Lab——格式化字符串漏洞
1 实验概述格式化字符串漏洞是由像printf(user_input)之类代码引起的,这里user_input变量的内容由用户提供。当这个程序由特权运行(例如Set-UID程序),这个printf会导致以下情况之一:(1)程序崩溃;(2)从内存任意位置读取;(3)修改任意内存位置的值。应该注意,这个实验的输出依赖于操作系统,我们的描述和讨论是基于Fedora Linux (Core 4)...
2019-01-16 11:53:24
3523
1
原创 生日攻击实现离散对数问题的求解(C++)
!!!生日攻击是个概率性问题,以下代码可能只能实现部分离散对数求解问题,通过修改随机数种子可能会解决不同的问题…// BirthdayAttack.cpp : 定义控制台应用程序的入口点。//生日攻击#include "stdafx.h"#include <iostream>#include <cstdlib>#include <cmath>us...
2019-01-15 11:52:18
1542
原创 实现椭圆曲线上离散对数问题的求解
密码学实验课的题目,分享一下自己的代码,可能不够完美,供参考~自己动手才是王道哦!一、实验目的掌握椭圆曲线上的加法定律;熟练求解椭圆曲线上的离散对数问题。二、实验原理(1)有限域GF§上的椭圆曲线:对于固定的a和b,满足形如方程y2≡x3+ax+b(mod p) ( a,b,x,yGF§且4a3+27b2(mod p)≠0).(2)椭圆曲线Ep(a,b)上的加法定义如下:设P,...
2019-01-15 11:41:51
5421
3
原创 操作系统——进程调度模拟实验Java实现(先来先服务、最高优先数)
【实验目的】 掌握进程控制块的作用和实现技术; 熟悉操作系统的进程调度算法及实现方法。 【实验原理】每个进程有一个进程控制块(PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等等。进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达时间为进程输入的时间。进程的运行时间以时间片为单位进行计算...
2019-01-15 11:28:04
4815
3
原创 MFC绘制万花筒等分圆(VS2013)
先看效果图首先要找到不同等分数圆上等分点滑动条的数值即为等分数,滑动条的关联变量为m_sliderctrl2添加响应函数OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)函数中添加:// TODO: 在此添加消息处理程序代码和/或调用默认值 dengfen = m_sliderctrl2.GetPos();//获...
2018-12-15 21:05:54
1094
1
原创 MFC绘制图形、使用滑动条移动图形(VS2013)
(ps:用VC做可能会有问题,建议VS)先来效果图一、添加成员变量本文添加的成员变量较多,如上图。这里的hengxx,zongxx是图形的偏移量,初始值为0记得给它们初始化.两个滑动条要添加变量m_heng,m_zong。之后要通过滑动滑动条来得到偏移量赋值给hengxx,zongxx.二、用画笔、画刷等绘制图形注意要一层一层地画在OnPaint()函数中添加如下代码:C...
2018-12-01 20:17:03
3719
2
原创 MFC 下基本的数据运算和处理—简易计算器
参考:https://blog.csdn.net/qq_37236745/article/details/78690607
2018-11-25 13:34:51
552
原创 MFC从编辑框取出数据保存文件到TXT文件中
首先要有一个创建好的保存文件按钮双击该按钮进入函数体内CString gReadFilePathName1; CFileDialog fileDlg(false, _T(&amp;quot;txt&amp;quot;), _T(&amp;quot;*.txt&amp;quot;), OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, _T(&amp;quot;txt Files
2018-11-16 20:59:39
7138
1
原创 MFC基于Progress动态滚动进度条
1. 在对话框上新建一个滚动条控件IDC_PROGRESS12. 关联一个control类型的变量m_progress具体步骤:右击进度条,添加变量常用方法:**SetRange方法用来设置进度条显示范围。void SetRange(short nLower, short nUpper);nLower:最小值,默认0;nUpper:最大值。设置进度条进度:SetPos方法int...
2018-11-15 23:17:20
2267
原创 MFC使用滑动条显示数据到编辑框(VS2013)
对滑块右击,添加消息响应函数WM_HSCROLL打开类向导双击滑动条,在它所在cpp文件中找到函数OnInitDialog()在这个函数中添加以下语句:CSliderCtrl m_slider; CString str; // 将“关于...”菜单项添加到系统菜单中。 m_SliderCtrl.SetRange(0, 100); //设置滑动范围 m_SliderCtrl.Set...
2018-11-14 22:55:07
2022
6
转载 MFC读文件中文出现乱码解决
MFC之七读写文本文件TXT的汉字 - huan9j1e的博客 - CSDN博客 https://blog.csdn.net/czchj/article/details/54038651
2018-11-14 11:46:18
6412
原创 仿射密码的解密(Java实现)
原理:仿射密码:设两个整数α和β,及gcd(α,26)=1,加密过程:x → αx+β (mod 26)解密过程:x → α*(x-β) (mod 26) 其中α•α*= 1(mod 26)这种加密方法的密钥就是一对(α,β),对gcd(α,26)=1中的α有12种可能的选择,对β有26种选择(因为用mod 26来计算,所以仅需要考虑介于0~25之间的α和β,因此密钥值一共有12•26=...
2018-10-19 20:08:55
3048
MFC实现万花筒效果画笔画出任意线条等
2018-12-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人