自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 收藏
  • 关注

原创 dpdk-ipsec-secgw 【dpdk20.11】

【代码】dpdk-ipsec-secgw 【dpdk20.11】

2023-12-23 16:48:50 491

原创 iperf3 使用

https://baijiahao.baidu.com/s?id=1731514357681464971&wfr=spider&for=pc

2023-09-15 15:27:09 177

原创 ubuntu20.04 直接安装vpp23.06 测试双 VPP Tunnel Ike2

下载选项:focal(ubuntu20.04)选中要下载的包双击进入。

2023-08-25 00:33:57 836

原创 VPP make inatll-deb

dpkg安装sudo apt-get install dpkg # 安装或升级 sudo apt-get remove dpkg。

2023-08-18 02:45:30 142

原创 关于C ++:共享库中带有__attribute __((constructor))的全局/静态变量初始化问题

xxx

2023-05-24 17:37:04 108

原创 宏函数作为宏的入参

xxxx

2022-12-13 17:48:16 231

原创 C 语言队列实现

C语言实现queue

2022-07-07 11:08:01 246

原创 file io 写入性能对比

#include <stdio.h>#include <stdlib.h>#include <sys/mman.h>#include <sys/types.h>#include <fcntl.h>#include <unistd.h>#include <sys/time.h>#include <time.h>#include <string.h> #d...

2021-12-01 11:09:34 485

原创 测试demo: __attribute__((constructor)):main 函数前执行 + ## 连接符生成函数名

#include<stdio.h>#include <stdarg.h>#define module_init(function, type) \static void __attribute__((constructor)) do_qemu_init_ ## function(void) \{ .

2021-11-19 15:49:57 204

原创 vnc下载

VNC Server v6.7.4+VNC Viewer v6.20.529 注册版附Key-VNC远程控制软件-联合优网

2021-09-18 16:56:53 664

原创 模板函数中使用: 模板类型的函数指针

/* * 下面这个例子是说,func里面要传递不同的参数,但是在执行里面代码之前,要先判断传进来的参数的大小 * 如果把函数模板放入两个函数,然后进行重载,会出现代码的部分冗余,因此这里考虑用模板把公共操作提出来 */#include <iostream>#include <vector>#include <string>using namespace std;// 定义一个函数模板template<typename T>int comp.

2021-09-01 15:48:53 1968

原创 Python中如何获取类属性的列表

前言最近工作中遇到个需求是要得到一个类的静态属性,也就是说有个类 Type ,我要动态获取Type.FTE这个属性的值。最简单的方案有两个: 1 2 getattr(Type, 'FTE') Type.__dict__['FTE'] 那么,如果要获取类属性的列表,该怎么做呢?首先上场的是 dir ,它能返回当前范围的所有属性名称列表: 1 2 3 4 >>> ..

2021-08-25 09:42:24 707

原创 python+ c/c++ 混编

示例:https://www.cnblogs.com/pyse/p/8590829.html修改示例(结构体:包含指针的联合体):test1.py#pycall.pyimport ctypesfrom ctypes import *class private_u(Union): _fields_ = [("string" , c_char_p), ("integer", c_longlong), ("bo...

2021-08-24 17:09:17 134

原创 Makefile

makefile 屏蔽输出 Entering/Leaving directoryhttps://www.swack.cn/wiki/001558681974020669b912b0c994e7090649ac4846e80b2000/0015923635847879673dc174ee44f3db09b44cb6efed77d000建立一个入口Makefile执行指定子目录中的Makefilehttps://blog.csdn.net/walle_love_eva/article/details

2021-08-19 15:04:48 300

原创 多重继承:可将派生类对象转为任意基类对象(单中间不可转为其他类型)

#include <iostream>#include<string>using namespace std;#include <stdio.h> #include <stdarg.h> class IBaseA{public: virtual void fnA() = 0; int m_nTestA;};class IBaseB{public: virtual void fnB() = 0; in.

2021-07-31 19:25:45 172

原创 linux c++ 获取空闲端口

/**g++ -o bind_c bind_c.cc*/#include <stdio.h> #include <unistd.h>#include <stdlib.h>#include <string.h>#include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h.

2021-05-31 20:52:28 1455

原创 Ubuntu下编译报错ld: final link failed: nonrepresentable section on output

-fPIC重新编译,这个问题只有在64位系统中编译的时候才会出现。-fPIC 作用于编译阶段,告诉编译器产生与位置无关代码(Position-Independent Code),则产生的代码中,没有绝对地址,全部使用相对地址,故而代码可以被加载器加载到内存的任意位置,都可以正确的执行。这正是共享库所要求的,共享库被加载时,在内存的位置不是固定的。解决方法:如果是cmake ,在CMakeList.txt 前面添加: add_compile_options(-fPIC)参考:http://www.op

2021-05-25 15:18:33 8352

原创 gdb 通过指针查看/修改结构体信息

(gdb) print &gudday$8 = (struct day *) 0x601040 <gudday>(gdb) print gudday$9 = { day1 = { a = 0, b = 0 }, day2 = 2, day3 = 0}(gdb) print *(struct day *) 0x601040$10 = { day1 = { a = 0, b = 0 },.

2021-05-18 09:48:13 3523

原创 TCP 校验和更新+TCP发送机制

1. 校验和更新:https://www.cnblogs.com/sunnypoem/p/12491036.html2.TCP 发送机制:https://blog.csdn.net/shengzhu1/article/details/72598311(推荐)https://blog.csdn.net/Cecilia3333/article/details/80358201

2021-05-07 17:12:43 165

原创 C语言使用__FILE__只打印文件名

#include<stdio.h>#include<string.h>#define FILE_NAME(x) (strrchr(x,'/')?strrchr(x,'/')+1:x)void main(void){ printf("filename:%s\n", __FILE__); printf("%s\n",__DATE__); printf("%s\n",__TIME__); printf("filename:%s\n",FILE_...

2021-04-28 15:31:52 1952 1

原创 C++中这种写法:[this](int a, int b)

类成员函数定义:int testClass::test(){auto getNum = [this](int a, int b){return (a-b);};int c = getNum(5, 4);return c;}这是一个lambda表达式,等价于:intanonymous_function(inta,intb){return(a-b);}autogetNum=anonymous_function;并且捕获了this指针,可以...

2021-04-01 14:37:10 734

原创 vector 内存位置

1. vector 在函数中定义(vector<int > arr;), 对象是在栈上(&arr 是栈内存地址), 数据在堆上(& arr[0] 是队内存地址)。2. vector 在函数中new 出(vector<int>* temp = new vector<int>(10,1);), 指针在栈上(&temp), 对象地址在堆上(temp ), 数据在堆上 (数据(*temp ).at(i); or (*temp )[i];取...

2021-03-29 14:43:47 4509

原创 vscode 常用快捷键

1. Alt+shift + 上下箭头 : 拷贝选中(单、多行)到上、下行2. contrl +I :从上到下选中行3. 从投入了+Alt+up/down :上下插入光标 ,列修改文件4. contrl +F2:选择当前字符所有出现5. Home/End : 行首/尾6. contrl +Home/End : 页首/尾...

2021-03-19 10:00:19 118

原创 数据结构与算法9---快速排序

快速排序1. 原理单轴快排改进->双轴快排:Java: arry.sort(int) 经典算法性能:平均 O(nlogn ), 最差 (每次选的边界为最大值,每次只能分出一个值, 可优化:随机取值,判断是不是顺序增长/减小)O(n^2) 最小:(nlogn )1.2 基本实现:#include<iostream>#include<ctime>#include<algorithm>#include<string.h...

2021-03-18 02:31:54 226

原创 数据结构与算法7---归并排序(merge sort)---java和python内部使用

归并排序---python、Java 对对象的排序方式1.简介特点:算法特点: 最优 nlogn 最差nlogn 最好 nlogn 空间复杂度O(n:递归底层不是同时占有会释放因此n) 稳定递归,无限嵌套(方法一直调用)系统一直给方法分配栈帧,把栈空间占完,直到base case。1.1 原理 将数组进行二分,直到最小单元(1个/2个数据),对最小单元排序并合并往上。1. 将2个有序数组排序 a【1,...

2021-03-15 23:44:58 115 1

原创 cout 打印 volatile void* 为1问题

“volatile void*的地址值cout却变成了1”这个问题。这就要涉及到operator<<运算符重载的问题了。operator<<运算符的重载形式中,有对应const void*的,但是没有对应volatile void*的。同时我们知道,在C++的隐式转换中,不会移除const或者volatile限定。我们通过查看文档§27.7.3.6.2 Arithmetic inserters [ostream.inserters.arithmetic]ope...

2021-03-13 16:57:53 248

原创 数据结构与算法7---希尔排序

希尔排序---基于插入排序1.简介特点: 间隔大,移动次数少; 间隔小移动距离短。 (比普通插入排序效率好,但不稳定)1.1基本实现#include<iostream>#include<ctime>#include<algorithm>#include<string.h>#include<vector>using namespace std;class InsertSort{p...

2021-03-13 14:00:36 109

原创 数据结构与算法6---总结简单排序算法(选择、冒泡、插入)

冒泡:慢,数据交换慢 基本不用 选择:不稳定,慢 不用 插入:三种中最快,稳定,样本小,基本有序时效率高 常用

2021-03-13 13:00:37 77

原创 数据结构与算法5---插入排序

插入排序对基本有序的数组最好用稳定与冒泡排序区别: 冒泡为相邻两数据对比,不符合顺序交换;冒泡排序用于对比的最小数据随时可变。选择排序从排序开始第二个位置,按照大小顺序依次往前对比,符合时插入并停止,插入的数据是不变的。1.简介 类似在有序的扑克牌中,插入一张牌进去,使之符合之前的顺序。从边界位置依次往前插。1.1 算法原理 从起始第二位置开始遍历到截止位置 与前数据比较,符合顺序不动,若将不符合 ,交换位置 重复2直到符合顺序...

2021-03-13 00:31:50 70

原创 数据结构与算法---4---冒泡排序

数据结构与算法---1#include<iostream>#include<stdio.h>#include<ctime>#include<cstdlib>#include<string.h>#include<algorithm>using namespace std;class BubbleSort{public:BubbleSort(){};~BubbleSort(){}; int s..

2021-03-12 21:10:09 140

原创 git只提交部分修改的文件(提交指定文件)

在我们的项目中,经常会在本地编译一些代码,还未写完,测试那边来告诉你要改改某个文件的bug,非常着急,此时改完了,提交的时候,自己还在编译的代码并不想提交,此时,你可以利用git这些指令帮助你!1/ git status -s 查看仓库状态2/ git add src/components/文件名 添加需要提交的文件名(加路径--参考git status 打印出来的文件路径)3/ git stash -u -k 忽略其他文件,把现修改的隐藏起来,这样提交的时候就不会提交未被add的文件4/ g...

2021-03-12 16:12:47 3413

原创 C++sort +重载

一.sort函数1.sort函数包含在头文件为#include<algorithm>的c++标准库中,调用标准库里的排序方法可以实现对数据的排序,但是sort函数是如何实现的,我们不用考虑!2.sort函数的模板有三个参数:void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp);(1)第一个参数first:是要排序的数组的起始地址。(2)第二个参数last:是结束的地址(

2021-03-12 01:58:01 5326

原创 数据结构与算法---3---选择排序

选择排序选择排序----最简单也最没用的排序算法,有优化空间 计算时间、空间复杂度 算法验证----随机数据生成器和对数器 算法程序思路思路:一遍一遍的遍历数组找最小数的位置 和第一位交换 算法程序写法:由简单到复杂: 验证一步步走; 多打印中间结果;先局部后整体 没思路先细分先粗糙后精细变量更名语句合并边界处理C++ 实现:#include<iostream...

2021-03-12 00:34:59 91

原创 数据结构与算法---2--排序算法列表

https://blog.csdn.net/zhangyikuaile/article/details/114682510常见的排序列表:(记住)常见排序列表 中文名称 英文名称 平均时间复杂度 最坏时间复杂度 最好时间复杂度 空间复杂度 稳定性 选择排序 Selection 1 不稳...

2021-03-11 23:44:29 68

原创 数据结构与算法---1

一、 Datat Structure --存储数据的不同方式 1. 数组 2.链表 二、算法--解决问题的不同方法----算法往往针对特定的数据结构 三、算法优劣 1. 时间测算 ---》起始终止时间差--Big O 时间太少,加入循环,求平均/总时间计算。不考虑必须要做的操作:循环,赋初值、程序初始化... 不考虑常数 2n------O(n) 不考虑低次项: n^2+n+1-----O(n^2...

2021-03-11 23:14:28 66

原创 typedef/define重复定义的一种解决方法

与#define不同,typedef没有类似#undef的方法取消定义,如果两个库中同时使用typedef定义了某个类型,便会编译失败。 一个解决方法是,在包含第二个库时使用#define将重复定义的类型名改掉。 例如,如果头文件sm_system.h和math.h中均包含"typedef xxxx float_t"语句,那么使用如下的头文件包含方法:#include "sm_system.h"#define float_t ms_float_t#incl...

2021-03-08 20:09:15 2859

原创 c++模板使用

#include<iostream>using namespace std; template<class T>T square(T number){ return number * number;}int main(){int a =10;cout<<"aa= "<<square(a)<<endl;float b =9.9;cout<<"bb= "<<square(b)&...

2021-01-16 16:58:28 110

原创 python UDP 实例

https://www.cnblogs.com/xiao-apple36/p/9279108.html

2020-12-09 20:48:12 103

原创 for 循环效率问题,当for 循环查一个最简单的表,循环达2048次,开销可达1Wcycle

这种情况下,采用循环效率极低,可考虑将表转为矩阵 ,要查的数据变为索引 ,直接映射查询。#include <vector>#include <iostream>#include <stdio.h>#include <string.h>using std::vector;unsigned long get_cycle_count(){ unsigned int lo,hi; asm volatile ("rdtsc"...

2020-11-10 17:32:08 275

原创 C语言代码高效优化

原文:https://segmentfault.com/a/1190000037447486

2020-11-04 14:22:44 129

python cffi lib

python cffi lib

2023-08-23

ubunt 18.04 vpp apt lib

ubunt 18.04 vpp apt lib

2023-08-23

vpp21.01 lib ubuntu 18.04

vpp21.01 lib ubuntu 18.04

2023-08-22

VPP kernel lib

VPP kernel lib

2023-08-22

空空如也

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

TA关注的人

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