C/C++/汇编
文章平均质量分 60
碎炎
用学核心编程当学操作系统的孩子。。。
展开
-
挺好玩的 控制台输入密码显示星号
#include #include #include using namespace std;class password{private: string psw,pswInput;public: password(const char* ch):psw(ch){}; void inputPsw(); bool isTure();};void原创 2011-05-23 17:39:00 · 3581 阅读 · 0 评论 -
在Windows上以服务方式运行 MSOPenTech/Redis
原文:http://www.cnblogs.com/shanyou/archive/2013/01/17/redis-on-windows.htmlServiceStack.Redis 使用教程里提到Redis最好还是部署到Linux下去,Windows只是用来做开发环境,现在这个命题发生改变了,在Windows上也可以部署生产环境的Redis,这都要感谢微软的开放,把Redi转载 2015-01-07 14:02:19 · 1689 阅读 · 0 评论 -
hiRedis Synchronous API
github: https://github.com/redis/hiredisfrom: http://blog.csdn.net/pla1988/article/details/8510721hiRedis操作同步API的接口函数只需下面三个即可:redisContext*redisConnect(const char *ip, int转载 2015-01-07 17:28:24 · 632 阅读 · 0 评论 -
Redis学习手册(Key操作命令)
from http://www.cnblogs.com/stephen-liu74/archive/2012/03/26/2356951.html一、概述: 在该系列的前几篇博客中,主要讲述的是与Redis数据类型相关的命令,如String、List、Set、Hashes和Sorted-Set。这些命令都具有一个共同点,即所有的操作都是针对与Key关联的Val转载 2015-01-08 15:17:47 · 460 阅读 · 0 评论 -
常用排序算法笔记之冒泡排序、快速排序
写个笔记。冒泡算法不多说,很简单,基本思路就是不断的把最大的数送往最大数该有的位置,然后把第二大数送往第二大应有的位置。简单粗糙的实现代码:void SortArray(int* _pArray, int _nArraySize){ for(int i = 0; i < _nArraySize - 1; ++i) { for(int j = 0; j < _nArraySize原创 2015-04-03 11:30:48 · 633 阅读 · 0 评论 -
c++计算网络延迟毫秒数
注:核心内容使用了http://www.cnblogs.com/goagent/p/4078940.html的实现,我只是做了下小封装开一个线程专门来刷ip的延时,可以使用在类似于联机大厅计算到各IP的延迟。有一个需求需要计算N个ip的延迟,所以才知道了有ICMP这个东西,学习了。简易的线程封装,支持基于message的同步#ifndef _INC_THREAD原创 2015-10-08 16:19:47 · 8297 阅读 · 3 评论 -
Sourcetree使用ssh后出现 The server's host key is not cached in the registry问题的解决办法
下载一个plink,执行对应的plink host,host为git的域名路径,然后点y再pull一下就不会出现这个问题了原创 2016-02-22 16:14:46 · 11326 阅读 · 0 评论 -
多线程情况下慎用localtime_r
最近有个需求,需要提升日志模块的性能。当前日志模块每秒钟处理的日志数量大概在55w左右,于是进行优化,在日志的IO线程中将sprintf剥离,提前将时间、日志等级等格式化处理。于是这样就产生了一个问题,在IO线程中频繁的使用localtime_r来获取日期时间,在单线程中性能影响可能不大,然而我将localtime_r移动到各工作线程后,首先在windows下性能还是有55%左右的提升的,大概原创 2016-04-26 11:56:52 · 10494 阅读 · 2 评论 -
简析令人头大的定义 void (*(*f[])())()
简析令人头大的定义 void (*(*f[])())()解析在v2ex闲逛发现有人在谈怎么学习c语言,有人推荐tcpl,然后写了个反人类的变量定义 void (*(*f[])())(),这么复杂的定义在c++实际的项目中其实也不常见,反正我喜欢研究下到底是什么,就花了点时间去看看这个定义,其实复杂的变量定义在csdn有一个人详细的解读过,不过凭着三脚猫的功底,我还是按着自己的理解去解读下吧。首先提取原创 2016-10-31 14:34:48 · 3374 阅读 · 0 评论 -
创建wince sdk出现To resolve the issue, reinstall Platform Builder.
Hey,If run this before SDK buildC:\Windows\Microsoft.NET\Framework64\v2.0.50727\Ldr64.exe setwowDo SDK buildThen return it to thisC:\Windows\Microsoft.NET\Framework64\v2.0.50727\Ld转载 2014-07-08 15:29:13 · 671 阅读 · 0 评论 -
小探多继承模式下虚函数的调用
昨天用cocos2d-x的时候遇到了一个疑问,当然运行是没问题的,由于以前没有过多的使用多继承,所以也没往深处想,可是函数调用的时候却怎么也想不通。当时的情况是这样的,写了一个自己的精灵,继承与CCSprite和CCTouchDelegate,然后该精灵会注册触摸,简单说就是一个CCTouchDelegate指针指向了我new的自己的精灵对象,然后供cocos2d-x调用CCTouchDele原创 2013-04-11 14:12:22 · 1015 阅读 · 0 评论 -
c++的万年历类,支持显示某月月历与某年年历,支持计算任意两个日期的间隔天数
#include #include #include using namespace std;class Date{private: int year; //年份 int month; //月份 int day; //几号 int days; //该月共有几天原创 2011-05-19 12:24:00 · 3697 阅读 · 1 评论 -
命令行加减乘除科学计算器
很久很久之前写的,写的乱的一塌糊涂啊。。float cal(vector&);bool scan(vector&);vector sp(string& s_t);bool isdig(char ch);int main(){ //define stack s_te; vector s_result; string temp; string原创 2011-12-16 19:56:39 · 2104 阅读 · 0 评论 -
[学习小结]数组名与数组首元素地址解析
2012.04.12学C++的日子里经常被莫名其妙的问题(没意义但是很纠结的问题)给缠住,然后想了半天,大概是处于这么一个状态:知道怎么用,但是却不知道为什么是这样,而且还带有一点疑问。今天被 变量名 这个问题给缠住了。因为我有个概念,CPU只认识地址,那么声明个变量到底是怎么回事,这个变量不是地址啊。然后得出了这个结论。编译器都帮我们弄好了,机器码原创 2011-09-15 20:09:07 · 2867 阅读 · 2 评论 -
[学习小记] 从汇编角度看局部变量的分配及数组名与指针的关系
ps:个人理解,如有错误请指出,本人菜鸟一只 在应聘的笔试中,这个考的似乎很多,以前只知道sizeof()的结论,但是也不清楚数组名到底是怎么回事,只知道可以隐式退化成指针。于是闲着没事干看了下编译器的实现方式。 下面从汇编代码下观察两者的区别。 首先可以先理解一下函数体内的局部变量的分配。进入函数体,会将参数和局部变量都压入堆栈段,在函数体内对局部变量和参数的寻址基本都是原创 2012-04-13 13:22:34 · 2616 阅读 · 2 评论 -
C++实现的简易链表
class ostream;#includeusing std::cout;template struct Node{ T data; Node *pNext;};template class SList{public: SList(); ~SList();private: Node *pHead; Node *pLast;原创 2011-11-24 16:36:04 · 545 阅读 · 0 评论 -
内置变量,复合变量与内存引用的关系(左值)及指针的几个解引用方法
最近思想的总结,本人菜鸟,有错指出变量之所以为变量,意义是它可以改变,不是常量,可为什么能够改变呢?普通的变量作为一个左值的存在,是引用了相应的内存的,而且跟C++的引用很相似:定义时就绑定,不能改变。于是定义了一个变量,它也就是引用了内存,在没有const修饰符的前提下,它可以被赋值操作符修改。于是,在函数体内定义的变量,就引用了该函数函数栈内的内存,对变量名的赋原创 2012-04-27 15:55:52 · 1573 阅读 · 0 评论 -
【C++】拷贝构造函数与赋值操作符的本质性区别分析
在C++中,牵扯到两个对象相互初始化,赋值,经常会调用拷贝构造函数和赋值操作符,许多新手也经常在此迷惑,究竟何时调用拷贝构造函数,何时调用赋值操作符呢?在语法层面上来说,当你需要用一个已经存在的对象来初始化一个之前未曾存在的对象时候,会调用拷贝构造函数,当两个对象都已经存在,将两者用=操作符作为参数调用时候,会调用赋值操作符,可是两者究竟有什么本质区别呢?首先需要明白构造函数的功能,以及背原创 2012-08-13 14:57:29 · 2035 阅读 · 0 评论 -
C++11中的右值引用
C++11中的右值引用C++11中新的标准比较多,牵扯到的概念也比较多,有些一开始听上去好玄乎,但是了解了它的产生是有道理的后就能比较好的理解了。首先,右值引用这个概念感觉很难理解,它和引用有啥关系呢?其实和引用一样,只是有点儿差异:右值引用它是引用了一个临时变量的(大部分情况下),当然你也可以把某个对象变成右值引用。右值引用是为了解决深拷贝带来的消耗问题的。大家都知道,一个对象拷贝给另一个对象的时原创 2016-12-23 17:37:54 · 710 阅读 · 0 评论