其他
文章平均质量分 77
獠
这个作者很懒,什么都没留下…
展开
-
二分法查找Unicode To GB2312转码表
博客重新开通,以作学习记录之用。 昨晚要写个C实现的Unicode到GB2312的转码程序,可是找了下网上现成的转码表数组多以GB2312码升序排列,而我只需要Unicode至GB2312的单向转码。由于两种编码之间的关系是非线性的,如果是GB码升序表,只好用朴素方法查找了,那么最大运行时间将是N,即遍历整个表。这是多么的残忍并且可耻啊! 那么,将表重新排序,或建立一个以Unicode原创 2013-02-14 18:45:57 · 5491 阅读 · 1 评论 -
PC与单片机USB(D12)数据通讯过程描述
在与网友交流D12开发心得时,发现有些网友对与PC应用软件与单片机之间数据交换的过程有些困惑,不明白PC应用软件是怎么将数据发给单片机以及单片机是怎样通过D12将数据传给PC应用软件的。在此,谈谈个人对这一过程的理解,希望对大家有些帮助。用户开发的USB设备一般不是windows开发的标准设备,而在VC软件中要对一个设备进行操作,必须先用CreateFile函数打开设备才能对其进行读写操作。当转载 2013-10-09 14:28:19 · 2060 阅读 · 0 评论 -
消息队列RabbitMQ和ActiveMQ的生产者流量控制
转自http://www.cnblogs.com/zhengyun_ustc/archive/2012/08/25/flowcontrol.html20120825 郑昀Q:MQ 们为什么要做生产者流量控制?A:麻烦就在于:『像 Erlang 的虚拟机实现和设计上都没有阻止用户往一个进程的消息队列里扔消息,当消息的生产速度过快,超过进程的处理能力时,这些消息就堆积起来,占用转载 2013-09-23 16:13:59 · 815 阅读 · 0 评论 -
输入输出重定向
想象一下,当我们写了个程序,开始是在命令行下运行的程序,后来用MFC之类的改写为窗体程序,原先用printf输出的trace都不可见了,但是我们又需要(输出到文件分析),怎么办?1、开始写的时候你定义一个MyTrace的宏;2、你可以把printf换成fprintf;3、使用输出重定向。第一种情况很方便,可程序已经写出来了,显然不大可能;第二种情况可以是可以,但劳动量比较大;转载 2013-09-23 10:43:47 · 585 阅读 · 0 评论 -
__attribute__关键字扩展
作用: 可以设置函数属性(Function Attribute), 变量属性(Variable Attribute), 类型屬性(Type Attribute)语法: __attribute__ (parameter) 注: attribute 前后各有两个下划线(underscore) 后面紧跟小括号((bracket)), 括号中间为__attr转载 2013-09-18 10:33:19 · 721 阅读 · 0 评论 -
Windows下编译SimpleAmqpClient
Windows下编译SimpleAmqpClient一、前言SimpleAmqpClient是一个易用的rabbitmq-c的c++包装。网上可找到的编译它的资料非常少,花了两天,费了些功夫讲其编译成功。记录以供参考。我的OS:Win7旗舰版我的编译环境:VS2010二、准备boost-1.47.0 或者更新版librabbitmq-c 参考我上一盘文章cmake 2.转载 2013-09-16 09:41:30 · 2538 阅读 · 0 评论 -
RabbitMQ-C初探
http://blog.csdn.net/cnhome/article/details/9222833 RabbitMQ着实是个好东西,当然了也有对C语言client开发的支持。例子和文档少的可怜,只能去项目里去查看example来理解,简单整理了一些,以免走些弯路。主要是在版本对应上,这点就没Maven好了,只能对好类库和例子。接下来我们简单看看需要的东东。环境:Ubuntu转载 2013-09-16 09:41:57 · 1192 阅读 · 0 评论 -
Windows下编译RabbitMQ-C
一、前言由于项目需要用的rabbitmq的c/c++客户端,所以尝试编译rabbitmq-c(注:我的机器是Windows7旗舰版,编译环境是VS2010)。二、准备工作下载 rabbitmq-c 源码包 http://hg.rabbitmq.com/rabbitmq-c/下载 rabbitmq-codegen 源码包 http://hg.rabbitmq.com/rabbitmq转载 2013-09-14 11:07:37 · 3169 阅读 · 1 评论 -
Volatile的陷阱
转自 http://blog.163.com/zhaojie_ding/blog/static/1729728952007925115019663/最近写的关于在嵌入式开发中常遇到的关于volatile关键字使用的短文,都是些通用的技术,贴上来share。 对于volatile关键字,大部分的C语言教材都是一笔带过,并没有做太过深入的分析,所以这里简单整理了一些关于volat转载 2013-06-04 15:43:33 · 632 阅读 · 0 评论 -
嵌入式C中volatile的用法
转自 http://blog.chinaunix.net/uid-26923078-id-3238368.html根据c/c++语法,const可以出现的地方,volatile几乎也都可以出现。但是,const修饰的对象其值不能改变,而volatile修饰的对象其值可以随意地改变,也就是说,volatile对象值可能会改变,即使没有任何代码去改变它。在这一点上,最典型的例子就是内存转载 2013-06-04 15:36:52 · 617 阅读 · 0 评论 -
RabbitMQ-C客户端使用说明
转自 http://www.cnblogs.com/liuhao/archive/2012/04/13/2445641.htmlrabbitmq-c是一个用于C语言的,与AMQP server进行交互的client库,AMQP协议为版本0-9-1。rabbitmq-c与server进行交互前需要首先进行login操作,在操作后,可以根据AMQP协议规范,执行一系列操作。这里,根据项目需转载 2013-04-25 11:38:17 · 963 阅读 · 0 评论 -
RabbitMQ Server/ RabbitMQ-C Client快速安装 Ubuntu篇
Server$wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.0.4/rabbitmq-server_3.0.4-1_all.deb$sudo dpkg -i rabbitmq-server_3.0.4-1_all.deb当然第一次安装我失败了,因为没有erlang依赖包,所以后来我选择了$sudo apt-get原创 2013-04-16 10:15:28 · 2607 阅读 · 0 评论