- 博客(36)
- 资源 (6)
- 收藏
- 关注
原创 从一个函数声明悟出了typedef的威力
接触C语言都六年了,我一直不知道typedef对于语言本身有什么贡献.至少我一直以为它也就是省点事而已,影响不到编程的思想.直到刚才,在论坛上有人喊"求命,这个函数声明是什么意思"时,我也差点被那个函数弄迷糊了.该函数是这样声明的: int (*Register (int (*pf)(const char *, const char *)))(const char *,
2009-02-13 15:13:00
764
原创 让Makefile自己成为所有目标项的依赖项
在程序开发时,Makefile有时也不断进行更改.更改后进行make时,由于make本能的反应只是检查与目标相关联的文件是不是应该更新,而不检查Makefile自己是否改变过.这样,当只对Makefile做了更改而没有对与目标相关联的程序文件做任何更改时,make就不工作,必须得把其中至少一个程序文件"更改"一下写回磁盘后才能重新编译. 例如,有以Makefile文件内容
2009-02-05 14:33:00
1807
转载 C++中explicit关键字作用
C++的explicit关键字c++中的explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢?如果c++类的构造函数有一个参数,那么在编译的时候就会有一个缺省的转换操作:将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class MyClass{public: MyClass( int nu
2009-02-05 13:18:00
2730
1
转载 C++成员函数指针的悲哀
源文:http://www.cnblogs.com/ly4cn/archive/2006/03/13/349180.html C语言的指针相当的灵活方便,但也相当容易出错。许多C语言初学者,甚至C语言老鸟都很容易栽倒在C语言的指针下。但不可否认的是,指针在C语言中的位置极其重要,也许可以偏激一点的来说:没有指针的C程序不是真正的C程序。 然而C++的指针却常常给我一种束手束脚的感觉。
2009-02-04 12:30:00
1720
原创 国内技术网站与国外的差距
互联网这么发达的今天,网络带来的便利能使每个人受益.作为软件开发者,解决某个技术问题上网一搜更是轻而易举就能解决.国内互联网发展到如此地步确实令人骄傲. 但是,国内网络的便利只能对某些技术的外围开发带来便利.一旦某公司又推出一个新产品,采用了新技术,首先弥漫于网络的是所有关于该产品应该如何操作,如何使用,遇到什么问题怎么解决,等等.而真正关于这项技术的深层分析与研究却迟迟找不到.即使
2008-12-30 10:30:00
1240
原创 数据库JOIN算法
<span style="font-family:新宋体;mso-ascii-font-family:"Times New Roman";mso-hansi-font-family:"Times New Roman"">关系数据库中的查询中,JOIN<span style="font-family:新宋体;mso-ascii-font-family:"Times New Roman";ms
2008-12-30 10:24:00
8895
原创 被中国移动告知自己"已经"订了自己根本不知道的服务
正在上班,忽然来了个短信,打开一看是10086,内容是:尊敬的客户,您已经订制中国移动天津公司的[市区预报]业务,信息费2.00元/月客服电话10086当月首次定制72小时后开始计费. 就这么多.真是莫名其妙啊.我手机一直没动,也没上网干什么事,竟然就这样"订制"了,并且也不告诉我怎么取消,只说什么时候开始计费.真是无语.只好晚上下班打客服问问.
2008-12-29 14:11:00
765
转载 WINDOWS下EXE文件的格式(先偷来藏着,有机会再用)
.exe executable-file header format (3.1) an executable (.exe) file for the microsoft windows operating system contains a combination of code and data
2008-12-23 13:40:00
1063
原创 GCC内联汇编调试方法
前几天为了改进系统性能,用汇编将原来的关键代码重写了一下.但是汇编实在太容易出错,又不好找到原因,就想调试一下那块代码.由于写的汇编是嵌入到C/C++源代码里面的,并且执行时的环境比较复杂,单独提出来调试又没法创造出环境,只能和C/C++代码一起调试了. 用GDB调试C/C++程序已经比较熟悉,调试汇编也比较熟悉,但是还真没有遇到过需要调试这种混合语言.编译时也就按照常规加了个-g选
2008-12-17 11:35:00
3061
1
转载 Makefile教程
跟我一起写 Makefile h1{font-size:24px;margin: 0px;}td,select,input {font-size:14px}.content {font-family: Tahoma,MS Shell Dlg,宋体;font-size: 14px;line-height: 130%}.l17 {line-height
2008-12-08 10:39:00
1522
转载 CVS 入门教程
CVS 入门教程 - PostgreSQL 中文维基, PostgreSQL 中文站, PostgreSQL 中国社区, PostgreSQL Chinese community /**/ @import "/mwiki/skins/monobook/IE50Fixes.css?42b"; @import "/mwiki/skins/m
2008-12-05 16:33:00
708
原创 进位和溢出(Carry &amp; Overflow)
问题: 设有两个8位BIT的数A=a7a6a5a4a3a2a1a0, B=b7b6b5b4b3b2b1b0.进位标志CF, 溢出标志OF.则:计算C=A+B时,OF=? CF=? 计算C=A-B时, OF=? CF=? 网上找了半天,总说什么有符号数,无符号数,看晕了.二进制形式的一个数,你怎么知道它是有符号的还是无符号的?只好写程序试验了.程序是将0到255之间任意两个数相加,将产生溢出或
2008-12-02 14:30:00
3042
原创 落差
上大学时,最讨厌考试.平时课程就紧,没有时间做点感兴趣的事,考前更是紧上加紧.对考试的看法也由高中时的喜欢变成了谈考色变.人生经历过这么多大大小小的考试,本就习惯了考试.长大了,思想有点独立.小时候不管喜欢不喜欢考试,中国的教育制度决定了考试成绩才是能力的体现.那时候知道这个现实,知道不管喜不喜欢,都必须得考试.到了大学,真的不知道考试还有什么意义. 凭着每次遇到实际问题时自己对知识
2008-11-21 19:29:00
587
转载 C/C++混合编程中extern "C"揭秘
(摘自:http://tech.163.com/06/0118/09/27O66HCC0009159Q.html 时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus extern "C" { #endif //一段代码 #ifdef __cplusplus } #endif 这样的代码到底是什么意思呢?首先,__cplusplus是cpp中的自定义宏,那么定义了这个宏
2008-11-21 10:01:00
569
原创 空虚
上周回了次长春,周二才回来,回来后又状态不好,到现在一直感觉空虚.心中总是有太多的事放不下,解决了这个,又来了那个,生活就这样被各种事折腾得毫无规律.生活乱了,思想乱了,目标也迷茫了. 忽然发现好几天没有写点什么了,这几天过的那么匆忙而无聊,整个人也变得异常懒惰.很多时候,想拿起笔写下自己的生活,却懒得去动手.网络发达了,生活方便了,有时兴致高涨,心血来潮,说不定就找到某个什么网站乱
2008-11-20 16:46:00
394
转载 Vi常用操作汇集
<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" width="660" style="width:495.0pt;margin-left:-30.6pt;border-collapse:collapse;border:none; mso-border-alt:solid windowtext .5pt
2008-11-14 15:20:00
620
原创 比较迷茫
今天一直是在担心中度过的.昨天匆匆忙忙应付了开题报告,怕今天通过不了,一直提心吊胆.还好,暂时总算没什么问题了.在公司也有点小郁闷.我昨天开题写的压缩算法研究,但是好像目前来说压缩算法根本没有我的事,我只负责把各种程序集成到一块.真得抽空自己也研究一下数据压缩,也好将来写毕业设计. 其实到现在实习已经三个多月了,越来越感觉迷茫了.我不知道现在做的东西究竟能做出什么成果,也不知道能不能
2008-11-13 19:28:00
431
原创 C语言随机数内幕
头文件stdlib.h中有个rand()函数,它的作用是产生一个随机数.与其对应的有一个srand函数,它用来为rand提供一个初始的种子.这两个函数的原型如下:int rand(void);void srand(unsigned int seed); 其中rand()在每次调用时都返回一个介于0和RAND_MAX之间的随机数.如果在调用rand()之前没有调用srand(unsig
2008-11-13 17:41:00
2561
1
原创 充实
有时,忙碌让人觉得累,而有时,忙碌让人觉得充实,更多时候,忙碌让人觉得累而充实.有些人天生就是闲不住的人,忙忙碌碌让人觉得很充实而快乐,闲着无所事事让他觉得忐忑不安. 很多时候,人需要学会独立.总是依赖别人的人永远也长不大.曾经以为自己早已非常独立,无论从思维还是行动.最近才发现原来自己还是个小孩儿.总是梦想着自己的某些困难会有人帮助解决,遇到困难总是放弃,直到某一天,我发现我放弃的
2008-11-12 20:27:00
416
转载 求整数N的二进制形式中1的个数
/* 解法一 将二进制数的各位相加,结果即为1的个数。从两位二进制开始计算,以32位机为例。 55555555h = 01010101010101010101010101010101b 33333333h = 00110011001100110011001100110011b 0f0f0f0fh = 00001111000011110000111100001111b
2008-11-11 11:04:00
805
原创 怀旧
有时,总是无缘无故就是感觉有很多烦恼,但是仔细想又不知道自己在烦些什么.这样的感觉莫名其妙,这样的感觉也很无奈.静下心来,再仔细想,试着把现在担心的事烦恼的事具体列出来,却又无从下手.总之,有时候会莫名其妙地拥有很多模糊的烦恼,这些烦恼无法表达,没法说出来的烦恼. 或许是在一个地方呆的时间长了,有点厌烦?这样的话应该出去走走,出去转转,或者去别的城市玩玩,回来后,它们就会云消雾散,生
2008-11-10 18:59:00
377
原创 MYSQL存储引擎实现----分块管理
MYSQL虽是一个行数据库,但是研究列存储技术可以先以它为模板,以列存储引擎实现按行的查询分析功能.首先,在它提供的框架之下,先实现一个简单的引擎,然后将它一点一点地修改成标准的列存储引擎.本周的规划大致如下:实现一个磁盘管理模块,也就是一个文件系统,它将一个文件作为一块磁盘或者磁盘的确个分区,进行文件的管理.管理的每个文件就是一个"数据块",文件名就是数据块的"块号",暂时先将文件名固定
2008-11-10 10:33:00
1079
原创 无聊的周末
上午一直睡到十二点,才懒懒地睁开眼睛,盘算着今天该干点啥,迟迟不肯从温暖的被窝探出头。大厅里电视在吵,那是大飞不知什么时候起来了在一边看电视一边做饭吃。和我一个床的祥彬早就不见了踪影,后来才知道他去找同学逛街去了。另一个人照锋则在另一房间戴着耳机抱着电脑在看电视剧。 直到感觉肚子里的叫声已经吵的我无法入睡,才非常不情愿地爬下床,洗洗刷刷出去吃个盒饭,买张彩票。忽然想到很长时间没有
2008-11-08 20:33:00
402
原创 平淡的一天
其实每天都有很多事情值得回忆,每天都有付出与收获。平淡的一天,只是若干天后很可能没有太多的记忆。 看了一个贴子,说每天早上起来,都把今天当成生命的最后一天来过。生活中有很多烦恼,我们不得不一个一个的解决。如果告诉你,今天是你的末日,那么你今天会干什么?所有的悲伤,所有的烦恼,真的还那么让人烦吗?我想很多人在面对这个问题时,都会考虑:我今天应该做什么?而不是我今天应该怎么办? 做
2008-11-07 19:20:00
722
1
原创 向往大海
一天的时间并不长,朝九晚六,午休一个小时,晚上加班到九点,再除去晚饭一个小时,一共工作十个小时。有时候这十个小时感觉实在太漫长,而又有时候感觉又太短。不同的时间不同的心情,不同的喜悦不同的悲伤。 我的公司没有加班的要求,加班是自愿的,也不加工资。初涉社会的我,没有亲戚,没有朋友,更没有money。如果不加班,晚上回去又实在没法忍受漫漫的长夜。一个人太孤单,呆在公司或许还能弥补点心灵的
2008-11-06 19:53:00
543
转载 Linux动态链接库的创建与使用
1. 介绍 使用GNU的工具我们如何在Linux下创建自己的程序函数库?一个“程序函数库”简单的说就是一个文件包含了一些编译好的代码和数据,这些编译好的代码和数据可以在事后供其他的程序使用。程序函数库可以使整个程序更加模块化,更容易重新编译,而且更方便升级。 程序函数库可分为3种类型:静态函数库(static libraries)、共享函数库(shared libraries)和动态
2008-11-05 09:19:00
1463
原创 实习感悟
<span style="font-family:宋体;mso-ascii-font-family:"Times New Roman";mso-hansi-font-family:"Times New Roman""> 来公司实习已经三个月,是该总结一下了。回想过去的三个月,有收获,有挫折,有苦恼,也有喜悦。<span style="font-family:宋体;mso-asci
2008-11-03 19:39:00
971
1
转载 C++类型转换小结
C风格(C-style)强制转型如下: (T) expression // cast expression to be of type T函数风格(Function-style)强制转型使用这样的语法: T(expression) // cast expression to beof type T这两种形式之间没有本质上的不同,它纯粹就是一个把括号放在哪的问题。我把这两种形式称为旧
2008-09-27 14:51:00
588
原创 typedef与#define区别
typedef用在一个正常的变量声明语句的前面,表示所声明的变量不是一个变量而是一个类型.在写法上,任何合法的变量声明语句前面都可以加一个typedef使之变成一个类型声明.而#define只是简单的宏替换,没有类型声明的意思.二者只是在某些极端情况下从语义上等价. 下面两种在语法效果上可以理解为等价的: typedef int x; #define x
2008-09-17 10:03:00
540
原创 C语言隐式类型转换规则
先看程序:#include#includeint main(int argc, char**argv){ unsigned int right = 1; char left = -1; if(left else if(left == right)printf("%d = %d/n", left, right); else printf("%d > %d/n", le
2008-09-12 11:16:00
1031
原创 代码阅读心得
面向对象方法对于设计大型应用程序来说是一个不错的方法.但是面向对象也不是每个人写的类都能看懂. 最近一直在看一个开源的代码,用的是C++,有很多类,但是它实在太难懂了.原因是它虽然也都用了面向对象的思想和方法,但是在类的内部,代码是很乱的.面向对象不仅仅指的是类之间的协作,还有一个大类内部各个事物之间的协作.一个类有公共接口,它是与外部协作的.但是类中还可以有保护的方法,私有的方法,
2008-09-04 16:14:00
602
转载 反汇编解读
E8 E5 FF FF FF can be decomposed to :E8( instruction), [E5 FF FFFF](data), and E5 FF FF FF is an address indicating the offset of thedestination instruction. When this instruction ends, the addr
2008-09-04 15:35:00
842
原创 Berkeley Db编译总通不过:undefined reference to 问题
#include #include #include #include using std::cout;using std::endl;using std::string;int main(int argc, char *argv[]){ Db db(NULL, 0); try{ db.open(NULL, "firstdb.db", NU
2008-08-19 14:34:00
2169
2
转载 const用法
const主要是为了程序的健壮型,减少程序出错.最基本的用法:const int a = 100; a的内容不变,a只能是100,也就是声明一个int类型的常量(#define a 100)int const b = 100; //和上面作用一样 const指针和引用一般用在函数的参数中int* m = &a; //出错,常量只能用常指针: const int *m = &a;int c= 1;c
2008-08-08 15:35:00
388
转载 Berkeley DB (DB)介绍
Berkeley DB (DB)是一个高性能的,嵌入数据库编程库,和C语言,C++,Java,Perl,Python,PHP,Tcl以及其他很多语言都有绑定。BerkeleyDB可以保存任意类型的键/值对,而且可以为一个键保存多个数据。BerkeleyDB可以支持数千的并发线程同时操作数据库,支持最大256TB的数据,广泛用于各种操作系统包括大多数Unix类操作系统和Windows操
2008-08-08 13:38:00
2228
原创 C/C++中const两种用法的微秒区别
用法一: const char * pstr = 0;用法二: char * const pstr = 0;有什么区别?
2008-08-07 20:42:00
742
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人