- 博客(133)
- 资源 (33)
- 问答 (1)
- 收藏
- 关注

原创 竟然如此简单!C++实现完全随机加密、解析库,并附上完整代码分析
最近有位朋友问起我之前编写的随机加密库的实现思路方式,讨论过后,我答应他写一个完全随机加密、解密库。这几天,我利用下班时间在原来的思路上做了更改,写出了一个完全随机的加密头,并通过加密头运算出加密值,然后使用加密值与数据运算得到加密效果。接下来,详细分析每一步编写思路。首先附上VS2010工程:工程下载! 工程内主要通过DataOperation_类实现加密、解密...
2020-03-07 15:16:55
1374
2

原创 C、C++实现的一种智能数据管理架构
之前研究STL相关结构的时候,发现STL系列的map、list、vector等设计有以下缺陷:1.迭代删除节点的情况下只可以删除一个节点(不包括清除所有节点的情况);2.在多线程情况下需要加锁或临界区等形式同步对象结构信息,这种情况属于当前大部分系统设计的短板;3.计算机运行内存产生碎片(STL系列结构分配一个新节点需要申请一次相应长度的内存空间,当清除这个节点时,这块内存有可能过短无法再次...
2018-11-25 20:37:21
590

原创 红黑树结构完整实现与详解
红黑树结构以平衡、高效的随机访问著称。实际使用过程中,其效率超出想象(节点数量越多,效率越高),大部分情况下查找的节点数量小于节点总量的二分之一,最长的查询路径也才是总量的二分之一加一个节点的距离。红黑树以黑色和红色用来标记根节点、枝节点与叶节点既有优势也有劣势(当然优势大于劣势): 优势:在多次查询节点时高度保持树型的平衡(旋转情况下,不超过三次旋转,插入数据不超过两次旋转); ...
2018-06-27 00:01:08
6421
3

原创 C语言实现XML生成解析库(XML扩展)
放假期间在家有点无聊,前一段时间对XML的生成、解析比较感兴趣,便根据自己对XML的理解结合链表实现一个XML的制作与解析的结构。设计采用了固定格式头信息加自定义头信息: 《?xml version=”xml” encoding=”Utf-8”? 》这段数据属于固定格式头信息,里面的”xml”和”Utf-8”可以通过库函数进行修改; 《?567?》这段数据属于自定义头信息,可以自由增加;
2017-10-04 21:38:24
1418

原创 STL之Vector(Linux内核)完整实现
自上次写了map之后对Vector比较感兴趣,由于对Vector理解不是很深刻,利用业余时间从Linux系统中拷贝出完整的Vector代码进行学习参考,并对一部分做了修改可以在Windows系统运行。 下面简单介绍下Vector的实现方式: 1.Vector的内存分配方式采用了标准STL的一贯做法——每增加一个节点动态分配一个节点需要的内存;。 2.Vector分配的内存是
2017-04-14 22:15:01
2036

原创 STL之Map完整(Linux内核)内部实现
刚开始接触Map的时候,了解到Map采用映射的方式储存数据,为了满足自己的好奇心,自己参考相关书籍,并且调试Linux系统的Map源码,成功完成了Map完整代码的封装。总体来说Windows系统Map与Linux系统Map采用了相同的实现思路,只是实现细节有点较小的差异。 同样采用相同的数据结构红黑树做为Map内核链表绑定数据的存储路线(代码内部有Window、Linux系统红黑树相关的实现
2017-01-18 21:07:30
3204
2
原创 一起学习C语言:结构体(二)
上一篇<一起学习C语言:结构体(一)> 中,我们了解了结构体的概念与定义形式,以及结构体变量初始化赋值。本章节,我们分析结构体成员访问形式,以及结构数组使用的场景。章节预览:4. 结构成员访问5. 结构数组目录预览章节内容:4. 结构成员访问 通常情况下,结构体内的每个成员都代表着不同的含义,一般需要单独赋值或输出。如游泳比赛中选手的名称、选手的成绩,它们所定义的类型不同,赋值方式也不同。 结构成员访问形式:
2020-12-12 18:56:15
155
原创 Centos系列 Curl error (37): Couldn‘t read a file:// file for file:///etc/pki/rpm-gpg/RPM-GPG-KEY-XXXX
最近在Centos8系统安装gcc时提示“Curl error (37): Couldn’t read a file:// file for file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial [Couldn’t open file /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial]”,经过摸索找到了方法,接下来记录一下修复方法。 先贴一张提示内容: 然后使用:wget https:.
2020-11-03 00:15:32
381
原创 一起学习C语言:结构体(一)
上一章<一起学习C语言:函数> 中,我们了解了函数的声明形式和程序的编译过程,以及函数的递归调用和函数的指针调用。本章节,我们分析结构体。章节预览:结构体1. 结构体的定义形式2. 结构变量的定义形式3. 结构变量初始化赋值目录预览章节内容:结构体 实际编程中,一些函数采用数据按组传入使用,比如整形数组对象(512位成员)作为参数传入。如果一组数据中包含不同类型的数据时,数组已不再适用,我们需要考虑其它保存方式。首先,我们了解一组数据中包含不同类
2020-10-24 12:07:13
89
原创 tensorflow离线安装指南
tensorflow离线安装是一件麻烦的事情,首先需要确定tensorflow安装包兼容当前环境,其次是依赖库较多且库版本需适配。接下来,我们在一台有网络的centos服务器系统内下载依赖库并完成适配。目录1. 下载tensorflow安装包1.1 确认python版本1.2 配置venv1.3 自动获取(安装)tensorflow指定版本2. 离线适配依赖库2.1 网络配置2.2 适配依赖库内容1. 下载tensorflow安装包 首先,我们需要确定安装ten.
2020-10-06 14:22:23
1098
2
原创 一起学习C语言:函数(四)
上一篇<一起学习C语言:函数(三)> 中,我们了解了变量的储存类别与声明方式,以及函数的递归调用原理。本章节,我们分析函数的指针调用,以及函数指针作函数参数使用的场景。章节预览:8. 函数的指针调用8.1 函数指针作函数参数使用9. 本章总结目录预览章节内容:8. 函数的指针调用 前面小节中我们了解到全局变量和静态变量在程序编译期间确定逻辑内存地址和内存空间大小,并在程序执行期间分配实际内存地址和对应的内存空间大小。当然,函数也是采用类似的形式
2020-09-20 22:13:01
1875
6
原创 一天世界晴
前言 “就这样了吗?”像是自嘲般而不甘心的自语,更像是一位落魄青年的心声。 这位男人曾经斩获过无数荣耀,似乎都显得那么微不足道。 现在,对于他来说一切都是新的开始,新的起点! 故事还要从十年前说起。 那一年他十七岁,因为身体出现了异常,而被迫面对现实。那一年,他的学业如身体那边逐渐下滑。 似乎一些都是天意的安排,这一天他临时起意,决定去南湖散心。在路边的美景衬托与家人的陪伴下,似乎让他打开了心结。这一天,他也遇到了生命中.
2020-09-10 23:27:52
133
原创 一起学习C语言:函数(三)
上一篇<一起学习C语言:函数(二)> 中,我们了解了内部函数和外部函数,以及变量的声明周期与作用域。本章节,我们分析函数的存储类别与声明方式,以及函数的递归调用原理。章节预览:6. 变量的存储类别与声明方式7. 函数的递归调用目录预览章节内容:6. 变量的存储类别与声明方式 在C语言中,全局变量可以如全局函数那般在别的文件内使用,局部变量也可以具有全局变量相同的生命周期。 在前面的内容中,我们了解到内存分为动态内存和静态内存。其中动态
2020-09-06 22:28:01
1410
2
原创 linux动态库修改名称(修改库文件内容)
在linux系统下,当系统中存在多个相同命名的动态库(.so)时,ldconfig只为执行程序链接最后找到的库,而之后找到的库虽然通过“ifconfig -p”可以看到库路径信息,但不会被链接到执行程序。 在实际编程中,如果多个项目都用到某个动态库(比如libteaa.so,存在有多个并且在不同路径下),而且libteaa.so内的某个函数实现不同,部分程序编译或执行时将会出现异常情况。举两个简单例子:a程序需要调用libteaa.so内的add函数为int add(i
2020-08-13 00:40:29
1060
6
原创 三十岁,真的是人生的分水岭吗
人生刚步入二十五岁时,身上的担子似乎在一夜之间加重了许多。那一夜,幻灭了所有幼稚的想法,似乎成熟、稳重才是这个年纪应该拥有的观念。 别人说,“二十五岁是前半生的分水岭”,但两年后发现,二十五岁不过是“年龄上的增长,心理上的伪成熟罢了。” 那么,“三十岁,会是人生的分水岭吗?” 生活中,我还不知道答案——至少现在还不知道,但我似乎找到了答案。 年龄不过是数字,标签
2020-08-02 00:20:04
2004
原创 一起学习C语言:函数(二)
上一篇<一起学习C语言:函数(一)> 中,我们了解了函数的概念,以及函数实现与程序编译过程。本章节,我们分析内部函数和外部函数,以及变量的生命周期。章节预览:4. 外部函数与内部函数4.1 外部函数4.2 内部函数5. 变量的生命周期与作用域目录预览章节内容:4. 外部函数与内部函数 默认情况下,我们定义或声明的函数属于“外部”函数,又称为“全局”函数。全局函数即可以被本文件中的其他函数调用,也可以被其他文件中的函数调用。
2020-08-01 21:51:07
1092
原创 一起学习C语言:函数(一)
上一章<一起学习C语言:初谈指针> 中,我们了解了指针和进程中的内存区域,以及动态管理内存空间方式。本章节,我们分析函数的用法,以及编写不同形式的函数。章节预览:函数1. 函数的概念2. 函数定义3. 函数声明与程序编译过程目录预览章节内容:函数 在“1.6.4 main函数用法”小节中,我们了解到“C语言大部分程序由main函数主导着程序正常执行”,也可以理解为“C语言大部分程序由main函数作为程序执行入口(出口)”。但是到目前为止,我们
2020-07-04 22:55:29
666
3
原创 CMake实战技巧
CMake是一个开放源代码,跨平台的工具系列,旨在构建,测试和打包软件。CMake用于使用简单平台和独立于编译器的配置文件控制软件编译过程,并生成可在您选择的编译器环境中使用的本机makefile和工作区。CMake工具套件是由Kitware创建的,旨在满足ITK和VTK等开源项目对功能强大的跨平台构建环境的需求。简单来说,CMake是一款非常强大的编译工具,配合buildroot可以做到自动从下GitHub下载源码、自动选择架构并编译到指定目录。听起来是不是很强大?当然,部分编译工具也能做到这一点,.
2020-06-23 00:59:45
264
原创 自从用了这几个网站后,linux下的开发(使用)更加简单化
在linux相关平台下开发与调试程序经常会遇到各种耗时的问题:比如目标机器不能联网安装依赖包,内核相关定义和函数不方便查找等。接下来,先从下载包开始,为大家推荐几个网站提高编程效率。章节预览:BelnetDebian系列包下载ubuntu系列包下载bootlin内核信息查找mirrors内核下载章节内容:BelnetBelnet公共FTP服务器,该服务器位于比利时布鲁塞尔,由比利时教育和研究网络Belnet运营。主要用于linux相关系统、依赖包下载,其中Debian、.
2020-06-13 17:07:44
827
原创 一起学习C语言:初谈指针(三)
上一篇<一起学习C语言:初谈指针(二)> 中,我们了解了进程中的内存区域,以及动态管理内存空间方式。本篇文章中,我们分析更多的动态分配函数,并通过示例来了解不同场景中的动态内存的分配、使用和释放方式。章节预览:7. 常见的动态分配函数8. 本章总结目录预览章节内容:7. 常见的动态分配函数 在一些场景中,由于malloc函数分配方式较为局限性,而不能满足使用要求。接下来,我们了解更多关于内存分配的函数。realloc函数函数原型:void *
2020-06-07 18:22:52
205
原创 windows:QtCreator调用库的方式
在windows相关系统中,使用QtCreator无法像linux相关系统那样调用静态或动态库,需要修改添加方式才能正确执行程序接下来需要5分钟阅读时间,来了解windows相关系统中QtCreator添加库的方式 在QtCreator中,一般使用MinGW32或MinGW64编译工程,直接使用LIBS += -lXXXX,会产生错误提示,参考图1:图1 linux方式加载出错 针对这种情况,我们首先确定MinGW属于32位还是64位,参考图2:图2 在项目中查看.
2020-05-28 01:03:34
415
原创 可爱的朋友,你是否有很多问号
生活中你是否有很多问号 为什么别人在那里看漫画,而你却在学习。日复一日,别人却在一直进步,而你却止步不前。 这些变化,你是否已经发现? 对于这种变化,也许你会认为别人拥有“天赋”,也许你会认为自己不够努力。 其实,这些都只是表面。 所谓表面,只是体现出来的一种现象,不能代表本质。 比如,买一块雪糕,包装华丽往往也是我们的首选,但不一定符合我们的口味。而有些雪糕甚至没有包装,却有入口“提神”的体验感,是不是更符合我们的口味.
2020-05-24 00:36:47
562
原创 一起学习C语言:初谈指针(二)
上一篇<一起学习C语言:初谈指针(一)> 中,我们了解了指针变量的声明和初始化方式,以及指针变量的引用赋值方式。本篇文章中,我们初步分析不同的内存空间 ,并通过示例来了解动态内存的分配、使用和释放方式。章节预览:4. 首谈进程中的内存区域5. 指针变量存储字符串常量6. 如何动态分配内存空间目录预览章节内容:4. 首谈进程中的内存区域 当程序执行时,程序将会以进程的形式存在虚拟内存中,系统会为我们的进程分配不同的内存空间。我们的进程就像一个大箱子,
2020-05-19 01:32:00
204
原创 “成长”必经之路:越努力越幸运
记得两年前《偶像练习生》第一期节目,“大家好,我叫陈立农,你们可以叫我农农”。就这样,我被这个节目成功吸引,也在之后的时间里观看了所有档期。 在这个节目中,“越努力越幸运”是我非常喜欢的主题,也最能体现参赛选手们的付出和收获。 记得你第一次登上《偶像练习生》的舞台,唱了韦礼安的《女孩》,给人的感觉是特别真诚。当你说出只做了六个月练习生时,我感到非常震撼,因为我私下里也会认真唱歌,却唱不出这种水平… 接下来的节目中,逐渐被你的努力所折服
2020-05-16 02:04:29
288
原创 一起学习C语言:初谈指针(一)
上一章<一起学习C语言:数组> 中,我们了解了数组的用法和适用场景,以及不同维度数组的下标计算方式。本章节,我们初步了解指针,并通过示例分析指针、指针变量的性质。章节预览:初谈指针1. 指针的概念2. 指针变量的声明与空指针3. 指针变量的引用赋值方式目录预览章节内容:初谈指针 在前面的章节中,我们简单了解了内存空间的概念和内存地址的获取方法。在实际编程中,需要理解更多关于内存方面的知识。 本章节通过了解指针,来分析程序中不同的内存
2020-05-11 00:20:05
346
原创 一起学习C语言:数组(三)
上一篇 <一起学习C语言:数组(二)> 中,我们了解了二维数组语法和二维数组的应用场景。本篇文章中,我们分析更多维度数组语法,并通过三维数组示例来了解更多维数组的初始化赋值、存储方式。章节预览:7. 多维数组的用法8. 本章总结目录预览章节内容:7. 多维数组的用法 当二维数组不能表达实际需求时,可以构建更多维数的数组使用。比如三维数组...
2020-05-04 15:36:21
297
原创 高级语言中的关键字:const用法分析
const是constant的缩写,本意是“不变的、不易改变的”,它属于c、c++、Java等高级语言中的关键字,通常用来修饰变量对象、函数参数、c或c++指针对象使用。 const在实际编程中起着至关重要的作用,本文主要讲解它在编程中的不同含义。章节预览:1. 变量修饰2. 指针修饰章节内容:1. 变量修饰 【例1】 int const...
2020-05-01 14:48:32
219
原创 角色互换:普通程序员与有理想的程序员
生活中,有较多付出的方向,也必然有缺失的方向。因为,大部分人都逃不出一个法制——“鱼与熊掌不可兼得”。 看待一件事的角度不同,得到的理解也会有所不同。 比如编程,热爱这份工作的朋友愿意付出大量的业余时间来弥补自己的不足之处,平常心的朋友则选择“随缘”对待工作中的进展。 不同的观念,也决定着之后的道路。 举个简单的例子,公司放假...
2020-04-25 02:21:21
795
原创 一起学习C语言:数组(二)
上一篇 <一起学习C语言:数组(一)> 中,我们了解了一维数组语法和一维字符数组的应用场景。本篇文章中,我们分析二维数组语法,并通过二维数组示例来了解二维数组的初始化赋值、存储方式。章节预览:4. 二维数组的声明5. 二维数组的初始化赋值6. 二维整数类型数组使用目录预览章节内容:4. 二维数组的声明 二维数组属于一个具有固定大小,...
2020-04-18 21:14:19
210
原创 【十万个编程篇】Linux—Debian系列,deb包首次分析
deb格式属于Debian系列专属安装包格式,它广泛应用在Debian、Ubuntu等Linux发行版本中。deb包的制作过程也比较简单,它由包文件信息以及包内容,经过tar打包而成。实际制作或使用时,只需dpkg相关指令即可完成这些工作。 大部分发行版中,deb包的安装信息记录在“/var/lib/dpkg”文件夹内,参考图1: 图1-deb包安装信息 ...
2020-04-08 23:13:15
248
原创 一起学习C语言:数组(一)
上一章 <一起学习C语言:C语言循环结构> 系列内容中,我们了解了循环结构的用法和适用场景,以及循环结构结合continue语句、break语句的处理方式。本章节,我们学习数组用法。章节预览:数组1. 一维数组的声明2. 一维数组的初始化赋值与使用3. 一维字符类型数组使用目录预览章节内容:数组 在C语言中,某一数据类型拥有多个必...
2020-04-05 18:29:45
271
原创 一起学习C语言:C语言循环结构(三)
上一篇 <一起学习C语言:C语言循环结构(二)> 中,我们了解了while、do…while语法和continue语句的应用场景。本篇文章中,我们分析循环结构嵌套使用,并通过几个示例分析continue和break语句的结合用法。章节预览:3. continue和break应用场景4. 循环结构嵌套4.1 循环结构嵌套用法5. 本章总结目录预览章节内容:...
2020-03-22 18:00:23
442
原创 【十万个编程篇】写文章与“写项目”的差别
自古暨今,世间陆续诞生出“现象级”的文学作品,如《左传》、《桃花源记》、《背影》等文章,又如《咏鹅》、《将进酒》、《一剪梅》等诗词。 编程世界也同样续写着新的辉煌,如Unix、Windows、Linux等内核系统,又如Apache、Tengine、ECharts等开源项目。 它们无一例外,都标志着历史的发展与演变过程。它们也拥有着独特的风格,只有“现...
2020-03-21 16:31:18
540
原创 一起学习C语言:C语言循环结构(二)
前言: 前一段时间发表的<【“天才”必经之路】>文章非常热门,虽然我知道它会是一篇成功的文章,但,它的火爆程度还是超出了我的预期。前几日,我写了这个系列的第二篇文章,文章中的故事场景和语法也更加细腻,更能突出主题,但,这也是我删除它的原因。这篇文章写得过于理想化,可能会导致读者朋友无法合理安排时间,比如无法做到“劳逸结合”。我们的生活虽然需要努力,但也要合理休息,调整身...
2020-03-14 16:37:42
564
原创 一起学习C语言:C语言循环结构(一)
上一章 <一起学习C语言:C语言基本语法> 系列内容中,我们了解了if语句、switch语句的使用方式以及不同运算符的优先级等内容。本章节,我们学习C语言循环结构用法。章节预览:1. C语言循环结构1.1 什么是循环结构1.2 for语句1.3 for语句分析1.4 for语句用法目录预览章节内容:1. C语言循环结构 经过前几...
2020-03-08 21:29:38
992
原创 【“天才”必经之路】只需一年时间,从编程小白成为同事们敬仰的编程大神
编程是什么?也许每个人都有不同的见解。 有人认为编程是一份工作,也有人认为编程是一种爱好,甚至有人认为编程是此生追求。其实,编程就是编写程序。 首先,从“编”字分析,它既可以表示编写,也可以表示按一定的原则、规则或次序来组织或排列。但,都离不开思考。 “程”字,它既可以表示工程,也可以表示行进的距离。但,都离不开执行。 ...
2020-03-07 15:17:41
22877
70
原创 一起学习C语言:C语言基本语法(五)
上一篇 <一起学习C语言:C语言基本语法(四)> 中,我们了解了位运算符的语法和不同的应用场景中的选择。本篇文章中,我们分析switch语句,并通过几个示例分析break、#define和三目运算符的应用场景。章节预览:5. switch语句5.1 break用法5.2 switch语句分析5.3 #define用法5.4 switch语句用法6. 三目...
2020-02-29 20:41:24
1019
原创 这封“情书”送给程序媛的妳
今天也许是妳的生日~今天也许是妳的开学期~今天或许是妳的入职期~总之,今天是个美好的日子,它即代表着青春的靓丽,又见证着我们深厚的友谊。那一天,一个偶尔的原因,使我们相遇。第一次相遇,虽没有语言上的交流,但在我们的眼睛里,却藏不住这一丝笑意。时间在飞快的流逝,终于我们有了第一次交际。那一天,我按耐不住灼热的内心,终于迈出了这一步——向别人打听了你的消息。第一次交际,是通过手...
2020-02-28 00:19:58
1083
原创 新世界感悟
假期这段时间,由于新型肺炎在全国大范围蔓延,绝大部分小区禁止人员流动。为了响应国家号召,作者坚持足不出户。在这里,作者怀着深深的敬意向全国的医生和护士们表达感谢,是你们一次又一次拯救了广大人民群众! 这些日子里,作者利用业余时间,看完了几部电视剧。其中,“新世界”这部电视剧,让作者意犹未尽。细品故事中的每一个环节,似乎都在表达着人生道理。 刚接触...
2020-02-23 02:30:14
775
原创 一起学习C语言:C语言基本语法(四)
上一篇 <一起学习C语言:C语言基本语法(三)> 中,我们了解了关系运算符的语法和不同的应用场景中的选择。本篇文章中,我们分析位运算符的用法,并通过几个示例分析不同的位运算符的运算方式和负数位移的保护方式。章节预览:4. 位运算符4.1 位运算符用法4.1.1 按位与运算4.1.2 按位或运算4.1.3 按位取反运算4.1.4 按位异或4.1.5 按...
2020-02-22 20:08:30
532
tensorflow_install.zip|tensorflow_install.zip
2020-10-06
DataOperation_20200304.zip
2020-03-04
MFC内部调用matlab函数(32位/64位)
2018-08-18
MFC按USB插口顺序显示所有USB设备(包括安卓)
2018-03-18
thinking c++
2017-03-21
空空如也
linux 汇编完整语法介绍
2017-03-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝