9 老婆心肝小宝贝

尚未进行身份认证

暂无相关简介

等级
TA的排名 19w+

第一篇:关于lua源码编译lua静态和动态库

1.一般程序开发,会选择从官方网站下载源码,自己来编译相应的静态或动态库;我开发过程中使用的是比较稳定的5.1版本,需要注意的是,各个版本可能存在语法不兼容的问题,但整体操作流程是不变的。下载地址2.我在博客下载资源中有上传 5.1 5.3版本lua源码编译的动态库和静态库工程(Lua51Lib,Lua53Lib,Lua51DLL,Lua53DLL),以及如何从C++中导出lua自定义库(...

2020-03-31 17:34:06

SAL注释

规律总结:_In_,_Out_:都必须是有效的;_z_:指针所指向的字符串必须有结束符;=============================================_In_z_:带结束符的字符串指针;_InOut_:作为输入值和输出值都必须是有效的,常见的是必须都不为空指针;_In_reads_(s):指向数组的指针,数组大小是s,且所...

2020-03-31 15:12:46

编译:无法解析外部符号

以下可能原因:a)代码中调用的函数只有声明,没有实现;b)项目包含某些头文件,但未链接或加载相应的dll或lib库;

2020-03-31 14:14:00

C++程序卡死的几种原因

1.很常见的原因:for while 死循环;for(;;);while(true);while(1);2.递归调用死循环;3.对带有STL类对象的变量进行memset/ZeroMemory,比如vector/map/list,可能出现DEBUG环境下正常运行(DEBUG环境对某些操作进行了优化),RELEASE环境则莫名其妙线程卡死;struct tagTest{ ...

2020-03-31 14:11:39

redis lua : command keys must In same slot

redis集群中报错 command keys must In same slot,原因是集群中是用多keys的eval语句,访问的redis数据不一定在同一个slot槽中(槽就是redis数据存储的索引号或者分组号)解决方法是:redis会默认根据key值进行计算槽索引值,而如果在每个key中加入“{xxx}”,redis集群会优先根据"{xxx}"字符串为依据计算槽索引号,可以保证操作的数...

2020-03-31 13:51:31

正数转负数的二进制过程

转换原理,在网上可以找到比较详细的博文,我只说过程,相对简单。//用简单的int型数字1//转换成二进制数据为 0000 0000 0000 0000 0000 0000 0000 0001//学过计算机的,都知道最高位代表符号位,0为正,1为负//所以得到的二进制为 1000 0000 0000 0000 0000 0000 0000 0001//但计算机还会进行反...

2020-03-19 15:35:02

Windows C++关于AES-CBC-PKCS7Padding加密解密

首先,需要了解的是,不管什么语言,只要是aes加密解密,所有的参数(包括密钥/向量/基数)都对了,加密和解密结果一定是一样的。在阅读的过程中,可能会有些词,看不懂是啥意思,比如 加密块大小BlockSize,加密向量IV,密钥Key,不着急,之后会有解释 ~C++使用的是三方库OpenSSL,文章最后,会提供openssl编译过的库,告诫下试图根据某些语言中的Aes-CBC代码过程,翻译成...

2020-03-19 12:18:12

C++ 如何避免一些细节上错误

示例代码随手写的,只是表达个意思,有些不一定符合语法规则,仅供参考;1.提供接口给别人使用,且形参是引用类型时,如果不让外部修改参数数据,需要用const修饰;比如:struct tagPerson{ int nAge; char aAge;};void CheckCondition(IN tagPerson& tPer);改成void CheckCon...

2020-01-03 15:26:41

任意长度十进制字符串转十六进制字符串

所谓十进制转换十六进制,其实就是要了解转换原理,再把数学逻辑翻译成代码逻辑;比如十进制字符串 "12345678" 转换之后为 "BC614E";顺带普及下十六进制值:十六进制,顾名思义,就是每个字符位的取值范围为 0~15;其中: 十进制值 十六进制值 0 0 1 1 ...

2019-10-31 15:24:49

C/C++格式化输出汇总

1.有符号整型 %d 和%lld// 4字节整型int n1 = -10000;int n2 = 10000;printf("%d / %d",n1,n2);// 输出结果为: -10000 / 10000// 8字节长整型long long int n1 = -10000;long long int n2 = 10000;printf("%lld / %lld",n1...

2019-10-22 09:39:30

IPv4和Ipv6

本博客转载别人的,还没经过本人验证~IPv4初始化过程:int CClient::InitSocket(CString strIP, short portNum){ WSADATA wsd; //WSADATA变量 SOCKADDR_IN servAddr; //服务器地址 int retVal; //返回值 int nServAddle...

2019-09-26 17:51:30

VS排查和定位内存泄漏

1、什么是内存泄漏?内存泄漏指的是在程序里动态申请的内存在使用完后,没有进行释放,导致这部分内存没有被系统回收,久而久之,可能导致程序内存不断增大,系统内存不足……引发一系列灾难性后果;(关于程序申请内存分配方式,详见:内存分配方式)2、零容忍排除内存泄漏对于程序的稳健型特别重要,尤其是程序需要长时间、稳定地运行时。C++这类动态内存申请释放都是由程序员控制的语言,稍不注意,很有可能就...

2019-09-20 15:54:43

C++类的几种构造函数

假定类名 CAnyTest不罗嗦,直接看以下代码默认构造//CAnyTest();//该构造函数不显式写出来普通无参构造函数CAnyTest();普通有参数构造函数CAnyTest(int nValue);CAnyTest(int nValue = 0);// 不能于无参构造同时使用,二义性拷贝构造函数CAnyTest(CAnyTest&);CAnyTes...

2019-09-02 17:51:54

带返回值的接口写法

假定接口需要返回一个指针,且可能涉及某些条件判断,不一定能获取到有效指针,大部分人写法如下:// 根据条件判断是否返回有效值Pointer* GetPtr(void){ if(xxx1) return nullptr; if(xxx2) return nullptr; if(xxx3) return new Po...

2019-09-02 16:38:11

大小端问题

本来我想说,Windows平台一般是小端,Linux一般是大端;但是,实际上大小端CPU架构有关,当然和系统也可能有关,可以配置大小端;对于CPU框架,ARM是小端,目前移动端CPU也是小端,stm32这类的嵌入式CPU一般是大端;我看网上的有些文章是这么描述的:大端:高位存在低地址,低位存在高地址;小端:高位存在高地址,低位存在低地址;刚开始看的时候,还挺认可的,然而仔细...

2019-08-22 15:49:15

SourceTree3.1.3跳过注册的方法

百度经验上的文章,亲测过,好使,如果链接能顺利打开,就不用看以下内容https://jingyan.baidu.com/article/4f34706e6e4985e386b56d79.html1.下载并执行SourceTreeSetup-3.1.3.exe,会进入登录或注册bitbucket的界面,先别急着操作,继续往下看。2.关闭上述安装窗口,打开%LocalAppD...

2019-08-06 16:25:12

编写简单的makefile

以编译和运行java程序为例,其他类型的c或c++程序都一样的操作方式;本文只教如何写简单的makefile,不讲各种高深的原理,任何东西的关键都在于应用先贴代码#以下为makefile文件内容mainer:mainer.java CAudioSDK.cpp CAudioSDK.h JniHelper.h (这前面必须是tab缩进)javac -cp /usr/ja...

2019-08-01 10:49:57

vs2015密钥

企业版:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV

2019-08-01 10:08:39

Linux下配置java jar环境

有个很关键的提醒:配置或者编译或者执行程序过程中,如果操作过程没问题,但都达不到预期效果,记住,勤快点,多重启几次Linux系统,会有意想不到的收获!切记,切记!!!其实所谓的配置jar环境,只是把相应的jar放到某个目录下,在编译时告诉编译器要链接相应目录下的指定jar;我这里配置的是java_wesocket为例;1.先下载java_websocket_xxx.j...

2019-07-31 11:26:05

Windows消息队列最大数量

公司底层处理消息日志是用Windows消息队列实现的,而序列化日志字符串是由公司自己框架底层实现,采用动态内存分配机制,处理完日志显示和文件写入之后,再释放;但最近遇到问题:如果写入日志太多,比如循环写入几万条日志,会造成Windows消息队列中的节点,超出Windows默认最大消息节点数,而Windows的处理方式,就是把超出的部分直接丢弃,也就造成了日志丢失和内存泄漏;解决方法目前有两...

2019-07-26 17:23:22

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享精英
    分享精英
    成功上传11个资源即可获取