- 博客(39)
- 资源 (3)
- 收藏
- 关注
原创 VS2019 libcurl 64位编译支持openssl+zlib
之前一直在用VS2015,最近考虑升级工具到VS2019,无奈好多工具库都需要重新编译,最让我头疼的就是libcurl库了,之前用vs2015编译的时候,也记录过一次,但是到vs2019各种编译无法通过,历时几天,终于找到可行的编译方案,不必自己动手编译openssl和zlib,直接从指定地址下载就好了。其实可以直接下载libcurl编译好的库,不过还没成功应用到项目中,先介绍libcurl 64位编译支持openssl+zlib,方便遇到相同问题的伙伴
2022-11-09 13:29:01
984
原创 C++封装html实体编码转换
起源:在匹配网页中的关键词的时候,发现网页中存在某个目标关键词,但是没有成功匹配出来。经分析发现网页中的关键词是以html实体编码的方式存在的,所以封装一下html实体编码与正常文本之间的转换,也给其他遇到这种问题的朋友们一个参考。举例:“免费”与“免费”之间的转换转换过程:html实体编码转换为正常文本 逐个读取出目标文本中的html实体编码,这算是一个“免” 先转换为unicode字符串:\u514D 再转为汉字:免
2021-12-30 21:29:28
1220
原创 Boost日期时间(date_time)—时间
目录一、基本介绍二、时间长度三、时间精确度四、时间点(ptime)-基本介绍五、时间点(ptime)-对象创建六、时间点(ptime)-基本运用七、时间区间八、时间迭代器-个人认为这个用处还比较多九、扩展-高精度计时器一、基本介绍引入头文件:#include <boost/date_time/posix_time/posix_time.hpp>二、时间长度int main(int argc, char **argv) { // 创建时间长度,
2021-11-24 15:27:57
3219
原创 Boost日期时间(date_time)—日期
目录一、基本介绍二、日期对象的创建三、日期与字符串之间的转换四、日期运算五、日期区间运用六、日历方面应用一、基本介绍date_time库包含两部分:处理日期的gregorian、处理时间的posix_time 处理日期:#include <boost/date_time/gregorian/gregorian.hpp> 处理时间:#include <boost/date_time/posix_time/posix_time.hpp>二、日期对..
2021-11-23 19:48:17
938
原创 Boost时间-进度展示(progress_display)
#include <stdio.h>#include <windows.h>#include <boost/progress.hpp>int main(int argc, char **argv) { boost::progress_display pd(100); for (int i = 0; i < 100; i++) { Sleep(rand() % 300); ++pd; } return 0;}运行效果:说明..
2021-11-23 16:13:26
259
原创 Boost时间-计时(progress_timer)
说明:与timer一样可以用于计时,是timer派生的类,timer的方法progress_timer一样可以用不同的是,progress_timer在析构函数中会打印耗时,就像上面截图红框中的内容
2021-11-23 14:17:24
459
原创 Windows平台 libcurl编译 openssl zlib 64位
1、下载curl,我这里用到的版本是:7.52.02、下载依赖的openssl、zlib:windows.php.net - /downloads/php-sdk/deps/vc14/x64/3、解压curl-7.52.0.tar.gz 到 D:/compile/curl/curl-7.52.04、创建文件夹:D:/compile/curl/deps5、将下载好的openssl和zlib解压到deps6、菜单中找到VS2015 x64 本机攻击命令行提示符,打开,cd到D:/compil
2021-10-25 17:53:37
1322
原创 关于在Debian9中MongoDB的安装、配置、使用
我是在Debian9中安装的,参考:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-debian/1、Import the public key used by the package management systemsudo apt-key adv --keyserver hkp://keyserver.ubun...
2019-07-04 14:13:16
1383
原创 Inno Setup 打包 语法整理
1、条件:if XXXXX then MsgBox('XXX', mbInformation, MB_OK);if XXXXX then begin do something 1..... do something 2.....end;这里没有花括号来包括代码块,如果有多条语句执行,在begin与end之间就好2、函数function FuncNa...
2019-04-10 16:57:31
604
原创 Ubuntu下通过tar压缩包安装mysql
首先下载安装包:https://dev.mysql.com/downloads/mysql/解压并移到/opt/mysql在mysql文件夹下创建data文件夹,用于存放数据库文件进入support-files文件夹,修改mysql.server:basedir=/opt/mysqldatadir=/opt/mysql/data添加系统mysql组合mysql用户:sudo groupadd my...
2018-06-06 14:34:12
4577
2
原创 分型算法之C曲线
先上图看效果:具体算法步骤如下:1、以A、B画一条直线2、以C构造第三个点,后面具体讨论这个C是如何来的3、分别连接AC、CB4、分别以AC、CB为边,重复第2、3步,直至完成指定深度下面我们来看这个C点的坐标如何计算:假设坐标A(ax, ay)、B(bx, by),求坐标C(cx, cy)不放作一个辅助图:其中AB为原始直线,我们要得到C点坐标,D为AB的中点,AD=DB=CD由于∠FDE=∠A...
2018-05-25 15:01:11
2723
1
原创 Linux中使用Qt Creator创建c++静态库 问题总结
对于引用外部库的顺序: 假如我们现在引用四个库:libA libB libC libD 其中A依赖C、D,B依赖D 那么,正确引用顺序为 -lA -lB -lC -lD可见,从前到后一次是被依赖的关系...
2018-05-23 17:42:10
679
原创 设计模式学习 C++实现之策略模式
这里说一点自己对策略模式的粗略理解,希望后面回顾的时候,能一步步加深理解什么情况下可以使用策略模式?1、出现同一抽象有多个子类,需要用if-else或者switch-case来选择使用哪个子类的时候2、对同一类型问题有不同的处理方式需要三个部分:1、策略接口(IStrategy):策略的基类2、策略具体实现:各个策略的具体实现3、策略环境(CContext):拥有一个策略引用最后是通过这个策略环境...
2018-04-27 11:32:17
378
3
原创 Python基础学习:列表和元组
序列的通用操作:索引:0开始,可以从末尾索引,最后一个索引值为-1分片:list[1:4:1] 包含起始,不包含末尾,设置步长序列相加:将两个相同序列拼接到一块序列乘法:相当于n个当前列表相加in:判断元素或者序列是否包含在另一个序列中len:计算序列中元素个数max:返回序列中的最大值min:返回序列中的最小值sorted:作用同list的sort方法,只不过这个函数返回一个新的排序后的列表,不...
2018-02-09 13:45:39
271
原创 Django入门小记
1、创建项目:django-admin.py startproject hckmanage.py:命令行工具,以各种方式与Django项目进行交互hck/__init__.py:告诉Python该目录是一个Python包hck/settings.py:该项目的设置/配置hck/urls.py:一份由Django驱动的网站目录hck/wsgi.py:一个WSGI兼容的Web服务器
2017-11-15 10:29:36
281
原创 Linux C/C++开发环境配置相关
1、添加Include默认搜索路径:export C_INCLUDE_PATH=XXXX:$C_INCLUDE_PATHexport CPLUS_INCLUDE_PATH=XXX:$CPLUS_INCLUDE_PATH将以上代码添加到/etc/profile末尾,保存退出,执行source /etc/profile2、添加library默认搜索路径:在/etc/ld.s
2017-10-26 19:18:52
404
原创 Linux下编译mongo的c++链接库
1、数据库版本:3.4.9 c++库版本要求:mongocxx 3.1.x2、编译C++库 参考:https://mongodb.github.io/mongo-cxx-driver/mongocxx-v3/installation/ 需要一个支持c++11的编译器(gcc[4.8/5.4],clang,visual studio) CMake版本为
2017-10-26 14:58:13
1206
原创 Ubuntu安装配置MongoDB 3.4.9
1、从官网下载MongoDB安装包,并放入Documents文件夹中: 地址:https://www.mongodb.com/download-center?jmp=nav#community2、解压: tar -zxvf mongodb-linux-x86_64-ubuntu1604-3.4.9.taz 将解压的文件夹移到/usr/local/mongo
2017-10-26 09:39:26
1025
转载 zlib库VS2015编译步骤
转载自:http://www.cnblogs.com/sanghg/p/5487509.html[点击这里下载zlib1.2.8源码](http://zlib.net/zlib128.zip)[点击这里下载zlib1.2.8编译动态库](http://zlib.net/zlib128-dll.zip)#下载源码库#从上面给出的源码路径下载zlib源码库,如果不想自己编译
2017-09-16 11:05:21
1047
原创 C语言中的union
最近在看到UNIX 网络编程中,对主机字节序判断的一个小程序时,对union的运用让我有点疑惑,如下代码:union{ short s; char c[sizeof(short)];}un;un.s = 0x0102;printf("%s\n", un.c);if(sizeof(short) == 2){ if(un.c[0] == 1 && un.c[1] == 2) p
2017-06-08 12:33:21
974
原创 Linux C 文件操作相关整理
1、检查文件是否存在access:按照实际用户ID和实际组进行访问权限测试#include int access(const char* pathname, int mode);pathname:文件路径mode:F_OK:测试文件是否存在R_OK:测试读权限W_OK:测试写权限X_OK:测试执行权限返回:0表示不存在2、检查目录是否存在opendir:打开文
2017-05-11 15:50:57
471
原创 Linux下配置Eclipse,进行C/C++开发
一、前期准备1、 下载JRE(Java Runtime Environment)下载地址:http://java.sun.com/javase/downloads/index.jsp找到包jre-8u131-linux-x64.rpm点击下载2、 下载Eclipse SDK(C++)下载地址:http://www.eclipse.org/downloads/
2017-05-04 13:30:55
6962
1
原创 CentOS7 64位 安装 CodeBlocks
一、安装版本1、codeblocks_16.01.tar.gz2、wxWidgets-3.0.2.tar.bz2二、安装前准备1、下载上面两个源码包2、检查当前系统是否已经安装一下环境,没有的话先安装makegettextautoconf>=2.5automake>=1.7libtool>=1.4m4intltoolgcc-c++libstdc++-devel
2017-04-26 09:55:00
4759
原创 关于编码转换的一些问题和整理(持续更新)
Unicode转GBKstd::string UnicodeTo(std::string sUnicode){ std::string sgbk = sUnicode; //printf("unicode:%s\n", sgbk.c_str()); setlocale(LC_ALL, ""); int npos = sgbk.find("\\u"); while(npos !=
2017-03-18 16:06:13
391
原创 libcurl静态编译库使用
error LNK2001: unresolved external symbol __imp__curl_easy_performerror LNK2001: unresolved external symbol __imp__curl_easy_setopterror LNK2001: unresolved external symbol __imp__curl_easy_initerror LNK2001: unresolved external symbol __imp__curl_easy_
2017-03-15 14:28:21
837
原创 error C2059: syntax error : 'constant'
error C2059: syntax error : 'constant'
2016-12-20 16:39:10
19970
1
转载 内存堆和栈的区别
转自:http://www.cnblogs.com/lln7777/archive/2012/03/14/2396164.html在计算机领域,堆栈是一个不容忽视的概念,我们编写的C语言程序基本上都要用到。但对于很多的初学着来说,堆栈是一个很模糊的概念。堆栈:一种数据结构、一个在程序运行时用于存放的地方,这可能是很多初学者的认识,因为我曾经就是这么想的和汇编语言中的堆栈一词混为一谈
2016-10-15 10:56:59
364
转载 大数据分析与机器学习领域Python兵器谱
曾经因为NLTK的缘故开始学习Python,之后渐渐成为我工作中的第一辅助脚本语言,虽然开发语言是C/C++,但平时的很多文本数据处理任务都交给了Python。离开腾讯创业后,第一个作品课程图谱也是选择了Python系的Flask框架,渐渐的将自己的绝大部分工作交给了Python。这些年来,接触和使用了很多Python工具包,特别是在文本处理,科学计算,机器学习和数据挖掘领域,有很多很多优秀的Py
2016-09-29 16:18:54
733
原创 应用程序无法正常启动(0xc000007b) 问题解决
今天32位机器下VC6.0编译一个程序,放到64位服务器上执行,突然就报出这个错误,原来是程序中用到了msvcr100.dll这个动态链接库如果可执行程序当前目录下没有找到这个文件,就回去系统目录下找,32位程序用64位的dll,自然就报错了后来去本地机器上把这个文件拷过去,问题就解决了
2016-09-29 14:50:32
6421
原创 c++ 关于字符串处理函数的整理
strcspn 从参数s 字符串的开头计算连续的字符, 而这些字符都完全不在参数reject 所指的字符串中. 简单地说, 若strcspn()返回的数值为n, 则代表字符串s 开头连续有n 个字符都不含字符串reject 内的字符strtok 线程中慎用
2016-08-20 17:37:49
405
原创 有用的在线工具地址整理
1、在线unicode和中文互转:http://www.bejson.com/convert/unicode_chinese/2、Json格式化,有视图界面,很好用:http://www.bejson.com/jsonviewernew/
2016-08-11 14:15:10
553
原创 关于utf8字符串处理,字符串截取乱码问题
今天在提取正文中跟关键词相关的一段文字时,总是出现乱码,只是简单的截取了一下长度,结果各种乱码后来想到之前处理gbk字符串时,根据第一个字符的无符号整型值来判断这个字占多少个字符,如果大于0x80就是两个字符,否则就是一个字符,修改完之后,还是出现乱码这才发现程序里取到的字符串全是utf8的(唉,改别人的程序,不知道会遇到什么问题),去网上查了下utf8的编码规则:
2016-08-11 14:12:06
3955
原创 GUN regex正则表达式的使用
自己写了个简单的正则替换程序,使用GUN regex库,VC下编译通过库文件可以去这里下载:http://download.youkuaiyun.com/detail/nsdcoder/9573050互相学习,资源免费#include #include "regex.h"#pragma comment(lib, "regex.lib")void regtest(std::stri
2016-07-11 17:21:18
762
转载 Linux下正则表达式规范
转自:http://www.infoq.com/cn/news/2011/07/regular-expressions-6-POSIX对正则表达式有基本了解的读者,一定不会陌生『\d』、『[a-z]+』之类的表达式,前者匹配一个数字字符,后者匹配一个以上的小写英文字母。但是如果你用过vi、grep、awk、sed之类Linux/Unix下的工具或许会发现,这些工具虽然支持正则表达式,语法却
2016-07-11 16:53:01
1210
GUN regex库和源码
2016-07-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人