方法算法
raining_peidx
本科,计算机专业.喜欢看书,交友.为人友善
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C实现urlencode&urldecode
最近,让编码给搞晕了头,找到个正确的记下来,省得下回又忘了。 static unsigned char char_to_hex( unsigned char x ){ return (unsigned char)(x > 9 ? x + 55: x + 48);}static int is_alpha_number_char( unsigned char c ){ if ( (c >=原创 2009-08-07 13:58:00 · 2975 阅读 · 0 评论 -
由一段代码想到的随机数问题
uid = rand(); p = (signed short *)&uid; //little-endian order; WriteValue(NVRAM_UID_LOW16, p, DS_SHORT, nvram_uid_error); WriteValue(NVRAM_UID_HIGH16, p+1, DS_SHORT, nvram_uid_e原创 2009-06-05 14:57:00 · 508 阅读 · 0 评论 -
用C来实现base64编码与解码
base64编码是邮件传输中比较常用的一种简单编码,它把8bit的编码,转换成6bit有效的编码,头两个bit置零(和邮件传输网关有关,高位为1会被过滤),因为只有6bit有效,所以有64个码,另外,base64希望编码能在ascii范围内,以便打印出来,所以会设置一个码表,编码映射到码表来。 也就是说,base64把每3个8bit,转换成4个8bit,其中每个8bit里面的高2bit是恒0。 这原创 2009-12-18 18:23:00 · 461 阅读 · 0 评论 -
感触C语言中的面向对象思想
经常听见别人说面向对象的程序设计,以前也有上过面向对象程序设计这门课。可是不幸的是,这些都是以C++,甚至VC++为基础的。而更加不幸的是,多年以来我一直是一个C的使用者。在学校的时候,我主要做的是硬件上的驱动层,和底层功能层。 在工作以后,又做的是手机上的软件开发,所有这些都是和C离不开的。虽然我不得不说,C++是一门很好的语言,但是它的编译速度,代码效率,编译后的代码大小都限制了它在嵌入式转载 2009-12-18 18:22:00 · 249 阅读 · 0 评论 -
CRC校验
最近因为需要做一个上传客户端,所以又温习了一下CRC校验。一、什么是CRC校验 循环校验码(Jyclic Redundancy Check,简称CRC码): 是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。二、CRC校验计算 CRC码是由两部分组成,前部分是信息码,就是需要校验的信息,后部分是校验码,如果CRC码共长n个bit,信息码长k转载 2010-03-11 19:34:00 · 330 阅读 · 0 评论 -
关于字符串比较的一点讨论---strcmp与memcmp的效率及实现原理
要求写一个比较高效的文件比较程序,竟然发现memcmp比strcmp要快很多,于是跟踪调试,发现它们的实现原理:intel/strcmp.asm: mov edx, dword ptr [esp + 4] ;取第二个参数地址 mov ecx, dword ptr [esp + 8] ;取第一个参数地址 test edx, 3 ;edx是第二个参数的地址,这里即检验该地址是否转载 2010-04-26 09:13:00 · 963 阅读 · 0 评论 -
AAC文件格式解析
<br />今天有了一个新任务,要把RTSP的音频流存成文件,格式是AAC的。<br />网上找了很久,也没有找到关于AAC文件的格式。<br />后来请教了一个专门作编解码的同事,在ISO MPEG的文档里可能会有相关的信息。<br />花了很长时间去找ISO的文档,ISO是收费的,网络是免费了,虽然难了点,但还是找到了部分的文档。其中辛苦不足为外人道也。<br />在找了个quicktime可以播放的aac文件,边看文档,边分析一下,总算是基本搞定了。但是有的文档没找到,还有些字段不知是什么意思。不管了转载 2010-06-02 18:54:00 · 2349 阅读 · 0 评论
分享