Web Analytics

挖掘一下C语言中的多维数组

好久没有看技术类的书籍了,今晚恰看到以前不知什么时候下到的一本oreilly的叫’mastering algorithms with c’的书,从书名可以看出这是一本讲算法的书,不过由于是选用了C语言作为讲解语言,所以难免不说说C语言。其中看到一节讲指针和数组,恰好碰到书中说: a[i][j] <=> *(*(a+i) + j),这个等价式看起来显而易见,但是还是有些东西值得挖掘一下的。 ...

November 29, 2006 · 3 min · Tony Bai

Goto也有它的好

最近真是忙的昏头转向,再加上天气逐渐转冷,很是有些不爽。今天dreamhead提醒我好久不更新Blog了,我也想更新,但是写点什么呢,工作相关的吧。 ...

October 17, 2006 · 2 min · Tony Bai

'此起彼伏'的复杂性

今天部门的一个同事很痛苦的向我求助。问题是关于一个新功能的测试,如果是一般的功能也就罢了,关键是这个功能是基于我曾做过的一个框架的,而这位同事由于是临时被指派的工作,对我的那个东西完全不熟悉。 ...

September 12, 2006 · 3 min · Tony Bai

不完备库接口带来的隐患

最近自己曾经辛苦耕耘过的两个项目同时上线,相关问题也就逐渐暴露出来。工作这两年多时间以后,使我有这样感觉:’测试永远都是不完备的’,有些问题只能在商用过程中发现,呵呵,明确一点啊我不是搞测试的:) ...

September 9, 2006 · 4 min · Tony Bai

小心'溢出'陷阱

这几天以前曾经做过的一个项目上线测试了,果不其然,没有经过’战争洗礼’的产品就是靠不住,这不出了若干问题。害得我逃了半天课远程支持。 其中的一个问题很值得思考。其所在的模块并非是一个核心功能模块,而是一个提高系统Availability的一个功能模块,主要功能就是监视磁盘占用率。我们通过配置给出允许使用的磁盘空间大小(以M Byte为单位),以及两个阈值,即当占用率达到多少的时候,Do A;达到多少的时候Do B。 ...

September 6, 2006 · 5 min · Tony Bai

P.J.Plauger版本C标准库实现分析之'ctype.h'

如果在你的源代码中经常见到如下代码: /* To Identify a letter */ if ((i >= ‘a’ && i = ‘A’ && i <= ‘Z’)) /* To Identify a digit */ if ( i >= ‘0’ && i <= ‘9’) 这说明你对头文件理解的不是很好,而也恰恰是为了减少代码中重复出现的各种’字符分类’代码而设置的。 ...

July 17, 2006 · 4 min · Tony Bai

P.J.Plauger版本C标准库实现分析之'assert.h'

I believe that seeing a realistic implementation of the Standard C library can help you better understand how to use it. — P.J.Plauger 按照字母序首先我们来看看<assert.h>,这个文件提供的接口功能很简单,但却是我们极其常用的功能-断言机制(如果条件为False,则输出Diagnostics信息,然后Abort)。当然在最终产品中使用断言并不是一种好的方法,不过断言是一种很有用的帮助我们调试程序的好工具。 ...

July 8, 2006 · 3 min · Tony Bai

'寓教于乐'学Ruby

在2005年初曾经写过一篇文章叫’结识Ruby’,当时的确是刚刚结识Ruby这种语言,好奇心使然,遗憾的是之后没有坚持学习下去,也就是在这一年Ruby获得了很大的发展,特别是Ruby On Rails的出现让Ruby一下成为新兴语言的代表,甚至有人预言Ruby将会成为Java的替代者成为下一代主流语言。无论如何,Ruby的日益被广大开发人员所接受是个不争的现实,就连Martin Fowler到中国讲’敏捷’时都向中国的开发人员推荐Ruby。大师都开始学习和使用Ruby了,我们还等什么呢?有空儿的时候就多学学吧。 ...

June 28, 2006 · 6 min · Tony Bai

字符串拷贝密码

在近期的一次工作交接中,在我的代码中发现了很多’安全隐患’,主要是以’字符串拷贝’为主。这种安全漏洞在C编程中是较为常见的,防范起来也较为容易,这里我们就来一起探索一下’字符串拷贝’的’密码’。 ...

June 26, 2006 · 3 min · Tony Bai

解决算法分析中递归问题的方法

当一个算法(如二分查找)中包含对自己的递归调用时,关于这个算法时间复杂性的分析最终都转化为一个递归方程的求解问题,而这样的算法不在少数。实际上这是数学领域的问题,但是计算机科学又怎么能脱离数学而存在呢?^_^ 数学是好东西呀,可惜自己在这方面造诣颇浅,今生之遗憾亚。^_^ ...

June 21, 2006 · 5 min · Tony Bai