c
文章平均质量分 85
xian_wwq
程序员
展开
-
[转]Win7 下用 VS2015 编译最新 openssl(1.0.2j)包含32、64位debug和release版本的dll、lib
原文:https://blog.csdn.net/YAOJINGKAO/article/details/53041165?locationNum=10&fps=1 首先本文参考了以下网页,感谢! http://www.jianshu.com/p/4522f17ce2ff和http://developer.covenanteyes.com/building...转载 2018-12-19 08:26:13 · 927 阅读 · 1 评论 -
[转]VS2013编译生成nanomsg库文件
https://blog.csdn.net/onlyshi/article/details/70173036编译准备,CMake工具软件和下载好的nanomsg源码包。我的是CMake 3.6.2,nanomsg是1.0.0版本。 解压你的nanomsg。打开CMake,添加源码目录,和编译构建目录 添加编译环境 默认是生成动态库,但如果要生成静态库,就勾选静态库选项...转载 2018-08-03 17:13:53 · 617 阅读 · 2 评论 -
[转]关于VS2013下inet_ntoa函数不能使用的问题
https://blog.csdn.net/Zxiuqi/article/details/49888727 发现在VS2013,64位的Windows系统中不能再使用老旧函数inet_addr(),inet_ntoa()等了。。例如使用inet_ntoa()时,会报如下错误提示:错误 1 error C4996: 'inet_ntoa': Use inet_ntop() or In...转载 2018-08-03 16:54:43 · 1254 阅读 · 0 评论 -
[转]【算法】AES(Rijndael算法)
原文地址:https://blog.csdn.net/zfpigpig/article/details/8526016上周好几天都在搞AES,总算是把Rijndael算法搞明白了。本片会仔细介绍AES(Rijndael算法),后两篇会介绍AES的java和php实现。AES(Rijndael算法)Rijndael算法首先是一个密钥分组加密的算法,通过置换(permutations )和替换(sub...转载 2018-07-12 11:35:44 · 608 阅读 · 0 评论 -
内存映射文件 错误码(1132、5)
1.问题描述:调用MapViewOfFile时,发现有时返回数据为NULL,通过GetLastError()显示错误为1132。经确认: 1132 --- 指定的基址或文件偏移量没有适当对齐检查调用参数,发现在MapViewOfFile时,必须保证dwFileOffsetHigh和dwFileOffsetLow合成的偏移量必须是64K的倍数。如果所要读取的位置不是倍数,则将offset取...原创 2018-07-23 14:15:26 · 5765 阅读 · 0 评论 -
std::vector使用简介
使用vector,需添加头文件#include<vector>, 要使用sort或find,则需要添加头文件#include<algorithm>。 为了简化书写,需在.h中增加using namespace std; 1.vector的初始化及赋值 std::vector<int> nVec; // 空对象 ...原创 2018-06-08 10:07:05 · 145248 阅读 · 0 评论 -
[转]C语言默认参数值的实现
原文地址:http://blog.csdn.net/pipisorry/article/details/25437893C语言中没有参数默认值的概念,可以利用宏来模拟参数默认值:(对于有多个参数的函数,调用时需要将参数列表中的每个 " , "写出来,不过这样就可以把默认参数放在非默认参数之前)以下代码在c下是不能通过的:定义fun():int fun(int a, int b = 10) ...转载 2018-03-06 10:39:14 · 5146 阅读 · 0 评论 -
使用inet_pton函数判定ip地址合法性
这两个函数是随IPv6出现的新函数,对于IPv4地址和IPv6地址都适用。函数名中的p和n非别代表表达(presentation)和数值(numeric)。地址的表达格式通常是ASCII字符串,数值格式则是存放到套接字地址结构中的二进制值。函数如下:[cpp]view plaincopy#includeintinet_pton(原创 2017-12-14 10:23:49 · 2689 阅读 · 0 评论 -
[转]windows下实现微秒级的延时
原文地址:http://blog.csdn.net/lhsxsh/article/details/41513931.微秒级的延时肯定不能基于消息(SetTimer函数),因为一出现消息堵塞等就会影响精度,而且setTimer单位才是毫秒.实际响应时间可能要到55毫秒左右.2.微秒级的延时也不能基于中断,VxD最快的时钟服务程序Set_Global_Time_Out函数才能保证1毫秒的精...转载 2017-12-22 09:39:56 · 4859 阅读 · 0 评论 -
[转]VS2015编译ForestDB
原文地址:http://www.cnblogs.com/oloroso/p/6305615.htmlForestDB 是一个快速的 Key-Value 存储引擎,基于层次B +树单词查找树。由 Couchbase 缓存和存储团队开发。1、下载forestdb源码git clone https://github.com/couchbase/forestdb.git转载 2017-12-13 09:16:41 · 313 阅读 · 0 评论 -
[转]Visual Studio 2015下编译zmq项目下其他项目踩进的项目引用坑
https://www.cnblogs.com/MrOuqs/p/5812040.htmlPS.在之前的一篇文章中介绍了如何用Visual Studio 2015编译zmq,在编译同解决方案中除了libzmq之外的项目例如inproc_thr时会报错误,具如下: 1 2 Severity Code Description Project Fi...转载 2018-08-02 15:30:35 · 700 阅读 · 0 评论 -
[转]开源软件架构-ZeroMQ
原文链接:http://www.aosabook.org/en/zeromq.htmlØMQ是一个消息通信系统,如果你愿意的话也可以称其为“面向消息的中间件”。ØMQ的应用环境很广泛,包括金融服务、游戏开发、嵌入式系统、学术研究以及航空航天等领域。消息通信系统完成的工作基本上可看作为负责应用程序之间的即时消息通信。一个应用程序决定发送一个事件给另一个应用程序(或者多个应用程序),它将需要发...转载 2018-08-16 17:03:13 · 712 阅读 · 0 评论 -
[转]进程间传递描述符
https://blog.csdn.net/sparkliang/article/details/5486069进程间传递描述符一每个进程都拥有自己独立的进程空间,这使得描述符在进程之间的传递变得有点复杂,这个属于高级进程间通信的内容,下面就来说说。顺便把 Linux 和 Windows 平台都讲讲。Linux 下的描述符传递Linux 系统系下,子进程会自动继承父进程已打开的描述...转载 2018-09-21 09:19:29 · 635 阅读 · 0 评论 -
[译]nanomsg和ZeroMQ的区别
原文地址: https://nanomsg.org/documentation-zeromq.html 自这篇文档完成以后,Nanomsg和ZeroMQ都已经发生了很大的变化。尽管如此,本文档从ZeroMQ和Nanomsg原创作者的角度来阐述,仍有助于理解nanomsg的历史变更。 授权 Nanomsg库基于MIT授权,这就意味着Nano...翻译 2018-09-14 14:01:43 · 15270 阅读 · 4 评论 -
[转]开源嵌入式数据库列表
http://embedded-databases.com/Hello and welcome to the open source embedded database list. We hope this list helps you to find a library for your development needs. In addition to an (incomplete) li...转载 2018-09-06 09:22:20 · 3459 阅读 · 0 评论 -
32bit integer compression algorithms - part 2
https://upscaledb.com/0012-32bit-integer-compression-algorithms-part2.html?utm_source=tuicool&utm_medium=referralThis blog post continues with the summary of a research paper by Daniel Lemire an...转载 2018-09-06 09:15:49 · 319 阅读 · 0 评论 -
为什么ZeroMQ不应该成为你的第一选择
原文:http://www.infoq.com/cn/news/2014/08/zeromq-not-first-choiceTyler Treat是一名软件开发人员,他近日发表了一篇博文《为什么ZeroMQ不应该成为你的第一选择》。文中,Tyler Treat对nanomsg和ZeroMQ进行了比较。nanomsg是一个套接字库,提供了多种常见的通信协议,其目标是使网络层更快、更具扩展性...转载 2018-09-03 09:05:08 · 2424 阅读 · 0 评论 -
[转]深入浅出入侵式容器
https://blog.csdn.net/weixin_42663840/article/details/81188003 在说入侵式容器前,先说一说什么是容器,本文提到的容器与docker一点关系都没有,是C++标准库中std::map、std::set、std::list等用来存放数据对象的这些类。在C++中,采用模板实现容器内对象的分类,也就是说通过模板实例化出具体类型对象...转载 2018-09-04 10:05:45 · 820 阅读 · 0 评论 -
[转]zeromq源码分析笔记之无锁队列ypipe_t(3)
在上一篇中说到了mailbox_t的底层实际上使用了管道ypipe_t来存储命令。而ypipe_t实质上是一个无锁队列,其底层使用了yqueue_t队列,ypipe_t是对yueue_t的再包装,所以我们先来看看yqueue_t是怎么实现的。1、yqueue_tyqueue_t是一个高效的队列,高效体现在她的内存配置上,尽量少的申请内存,尽量重用将要释放的内存。其实,容器的设计都会涉及这点...转载 2018-08-16 17:24:46 · 332 阅读 · 0 评论 -
[转]zeromq源码分析笔记之线程间收发命令(2)
在zeromq源码分析笔记之架构说到了zmq的整体架构,可以看到线程间通信包括两类,一类是用于收发命令,告知对象该调用什么方法去做什么事情,命令的结构由command_t结构体确定;另一类是socket_base_t实例与session的消息通信,消息的结构由msg_t确定。命令的发送与存储是通过mailbox_t实现的,消息的发送和存储是通过pipe_t实现的,这两个结构都会详细说到,今天先说一...转载 2018-08-16 17:23:30 · 299 阅读 · 0 评论 -
[转]zeromq源码分析笔记之架构(1)
原文:https://www.cnblogs.com/zengzy/p/5122634.html1、zmq概述ZeroMQ是一种基于消息队列的多线程网络库,其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字。引用云风的话来说:ZeroMQ 并不是一个对 socket 的封装,不能用它去实现已有的网络协议。它有自己的模式,不同于更底层的点对点通讯模式。它有...转载 2018-08-16 17:22:31 · 337 阅读 · 0 评论 -
[转]提示microsoft incremental linker已停止工作解决方法
原文地址:http://www.cnblogs.com/gameking/archive/2012/02/11/2346814.html这个是因为你的设置有问题。解决方法如下:解决方案一:项目->属性->链接器->常规 下面的“启用增量链接”,将“是(/INCREMENTAL)”改为“否(/INCREMENTAL:NO)”。不过这又引入了另外一个警 告:Fo转载 2014-02-14 14:36:50 · 1147 阅读 · 0 评论 -
[转]C语言开发函数库时利用不透明指针对外隐藏结构体细节
原文地址:http://www.cnblogs.com/gavanwanggw/p/7105254.html1 模块化设计要求库接口隐藏实现细节作为一个函数库来说,尽力降低和其调用方的耦合。是最主要的设计标准。C语言,作为经典“程序=数据结构+算法”的践行者,在实现函数库的时候,必定存在大量的结构体定义,接口函数须要对这些结构体进行操作。同一时候,程序设计的转载 2017-07-23 07:45:28 · 768 阅读 · 0 评论 -
P/Invoke调用Bug一例
开发工具:vs2015问题描述:C API升级后,客户端工具相应的按照修改后的API升级。测试反馈,批量获取标签的函数会导致vs在debug模式下崩溃。c api的定义如下:rtdb_error_t DBPT_GetTagsBaseAttribute(IN rython_server_handle_t* pServerHandle, IN int nTagC原创 2017-07-11 14:29:33 · 563 阅读 · 0 评论 -
[转]将tcc 载入工程 编译脚本
原文地址:http://blog.csdn.net/nondeep/article/details/8498430tiny cc 编译器tcc是一个支持windows和linux环境的C语言编译器。它也可以将代码编译之后直接嵌入到进程中,这就具有脚本的相关特性了,但它却不是解释执行的。 tcc将C源码编译称机器码,然后分配一块内存,将机器码写在这块内存中,宿主进程可以调用源码中转载 2015-11-24 15:07:58 · 1600 阅读 · 0 评论 -
[转]学习libevent的select模型
原文地址:http://blogread.cn/it/article/4381?f=hot1&utm_source=tuicoolLibEvent在套接字管理上声明了一个和fd_set一模一样的结构体,这里面我们称他为套接字容器(就是用来存放所有客户端请求的套接字),他不用fd_set的原因是因为select型的套接字个数是有限制的,默认是64,也就是说如果你用这样的方法来做应用,那么就只转载 2015-09-08 09:06:00 · 950 阅读 · 0 评论 -
[转]VS编译duilib项目时候的错误解决方法整理
原文地址:http://blog.csdn.net/x356982611/article/details/302174731:找不到Riched20.lib用everything等软件搜索下磁盘,找到所在的目录添加到vs的库目录即可,我得是C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib;其他的vs版本可能不一样,自行搜索转载 2015-08-20 14:35:50 · 909 阅读 · 0 评论 -
IOCP SOCKET池的实现
1. SOCKET池的必要性:“创建和销毁一个SOCKET句柄,实际就是在系统内部创建了一个内核对象,对于Windows来说这牵扯到从Ring3层到Ring0层的耗时操作,再加上复杂的安全审核机制,实际创建和销毁一个SOCKET内核对象的成本还是蛮高的。尤其对于一些面向连接的SOCKET应用,服务端往往要管理n多个代表客户端通信的SOCKET对象,而且因为客户的变动性,主要面临的大量操作除了一原创 2014-01-10 11:28:10 · 3692 阅读 · 1 评论 -
[转]IOCP模型与EPOLL模型的比较
http://www.cnblogs.com/lancidie/archive/2013/05/02/3054063.html转载 2014-07-10 14:02:37 · 540 阅读 · 0 评论 -
[转]_CRT_SECURE_NO_WARNINGS
原文链接:http://blog.sina.com.cn/s/blog_6aaa7e840100n77t.htmlWarning 1 warning C4996: 'fopen': This function or variable may beunsafe. Consider using fopen_s instead. To disable deprecation, use_CRT转载 2015-07-10 12:49:54 · 703 阅读 · 0 评论 -
[转]Redis有序集内部实现原理分析
原文地址:http://www.cnblogs.com/WJ5888/p/4516782.htmlRedis中支持的数据结构比Memcached要多的多啦,如基本的字符串、哈希表、列表、集合、可排序集,在这些基本数据结构上也提供了针对该数据结构的各种操作,这也是Redis之所以流行起来的一个重要原因,当然Redis能够流行起来的原因,远远不只这一个,如支持高并发的读写、数据的持久化转载 2015-08-12 14:48:34 · 1054 阅读 · 0 评论 -
[转]redis设计思想
原文地址:http://blog.chinaunix.net/uid-790245-id-3766301.html不同于nginx的精雕细琢,redis代码的风格趋向于简洁实用。简洁启事,下面所述不再列举任何源码,不拼凑任何外来资料。去除末枝,下面直入redis主题,尽可能简洁地描述redis的设计思想。 整体模型:单进程单线程事件驱动模式。 Redis在主处理流程中转载 2015-08-06 15:57:05 · 824 阅读 · 0 评论 -
[转]Redis有序集内部实现原理分析(二)
原文地址:http://www.cnblogs.com/WJ5888/p/4595306.html#3215884本篇博文紧随上篇Redis有序集内部实现原理分析,在这篇博文里凡出现源码的地方均以下述src/version.h中定义的Redis版本为主?1#define REDIS_VERSION "2.9.11"转载 2015-08-12 14:51:05 · 619 阅读 · 0 评论 -
[转]字符串匹配算法比较
字符串匹配(string match)是在实际工程中经常会碰到的问题,通常其输入是原字符串(String)和子串(又称模式,Pattern)组成,输出为子串在原字符串中的首次出现的位置。通常精确的字符串搜索算法包括暴力搜索(Brute force),KMP, BM(Boyer Moore), sunday, robin-karp 以及 bitap。下面分析这几种方法并给出其实现。假设原字符串长度M转载 2016-01-19 17:25:08 · 584 阅读 · 0 评论 -
[转]TFTP协议详解
TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69。很多设备升级内核都是通过tftp协议上传的,因为tftp实现非常的简单,比如自己家里用的路由器就可以通过tftp协议升级。协议概况:TFTP是一个传输文件的简单协议,它转载 2016-01-12 10:15:50 · 979 阅读 · 0 评论 -
[转]关于C中struct和union长度的详解
http://www.cnblogs.com/yue-blog/p/5878268.html 这几天看《代码大全》中的第十三章---不常见的数据类型,里面讲解到了C语言中的struct以及对指针的解释,联想到以前看过相关的关于C语言中stuct长度的文章,只是现在有些淡忘了,因此今天把保存的资料重新拿出来温习一遍,同时写下这篇文章,对以前相关资料总结的同时顺便梳理一下已有的知识转载 2017-06-06 09:55:30 · 1075 阅读 · 0 评论 -
[转]Run-Time Check Failure #2分析
原文:http://blog.sina.com.cn/s/blog_616ac4f00100ym8r.htmlRun-Time Check Failure #2 一般是栈被破坏,代码可能有缓冲区溢出一类的问题。Run-Time Check Failure #2 - Stack around the variable 's' was corruptedThi转载 2017-05-19 10:30:40 · 2043 阅读 · 0 评论 -
[转]char* CString LPCWSTR等类型转换解决方案
http://blog.csdn.net/zhouxuguang236/article/details/8761497在Windows编程中,经常会碰到字符串之间的转换,char*转LPCWSTR也是其中一个比较常见的转换。下面就列出几种比较常用的转换方法。1、通过MultiByteToWideChar函数转换 MultiByteToWideChar函数是将多字节转换为宽字节的一...转载 2017-03-27 17:10:40 · 3325 阅读 · 0 评论 -
[转]C语言获取系统时间的几种方式
C语言中如何获取时间?精度如何?1 使用time_t time( time_t * timer ) 精确到秒2 使用clock_t clock() 得到的是CPU时间 精确到1/CLOCKS_PER_SEC秒3 计算时间差使用double difftime( time_t timer1, time_t timer0 )4 使用DWORD GetTickCount()转载 2013-08-27 18:34:41 · 1322 阅读 · 0 评论 -
[转]浅析Windows安全相关的一些概念
http://www.cppblog.com/weiym/archive/2013/08/25/202751.html?opt=admin浅析Windows安全相关的一些概念Session我们平常所说的Session是指一次终端登录, 这里的终端登录是指要有自己的显示器和鼠标键盘等, 它包括本地登录和远程登录。在XP时代每次终端登录才会创建一个Session,但是在转载 2017-03-28 08:44:33 · 559 阅读 · 0 评论