2006年8月21日星期一

如何创建一个C语言库

今天终于学会了如何创建一个C语言的库,就是把自己写的函数不放在主程序里面,而是放在独立的头文件和其他C文件中。这样可使主程序清晰,而且代码维护起来更容易。

比如写了个求中位数的函数median(),希望在主程序中调用median()但不出现它的代码,可以在主程序头部写上#include "median.h",median.h要和主程序放在一个目录下。median.h中的内容就只一行,是median()这个函数的原型声明,例如 extern int median(int [], int);,而median()函数的代码写在另一个文件median.c中。

编译和连接主程序时,需要多加一个文件median.c,即要用gcc -o main main.c median.c 。用上面说的方法,就可把自己写的函数作成C语言的库了。

另 一种方法是把所有东西都写到一个头文件median.h中,前面是函数原型声明int median(int[], int);,接着是函数的代码。这样编译和连接时,就无须增加median.c,只需 gcc -o main main.c。这样虽然只有一个文件,但是如果代码较多就会让头文件比较乱,所以把头文件和真正的代码分开是创建库的更合理的方法。

上面的总结主要参考了How C Programming WorksEasyBMP的源代码。记下此笔记,供以后查询。

2006年8月17日星期四

买车记

几经周折,今天终于买了辆自行车 。

上学期在南门丢了车,虽然自己还有一辆,但太旧了,最严重是没有车闸了,而且不能带人,所以还得买。先买了一辆挺新的,但是骑着不舒服就又原价卖了。暑假回来后继续买。二手版上买车的多,卖车的少,一有卖车的帖子要不抢在前面,一会儿就被人先要了。曾经看过一辆车,但是太新了,怕丢就没有买。

今天中午一个人卖永久26自行车,老式的吧,我赶紧联系。我觉得那种车子挺结实,不大容易散。可是已经有人在先了,最后还是被那人买了,自己没拿到,遗憾了半天。

后来在北大东门买了一辆女式的车子,聊胜于无吧,总算可以带人了。恨死偷车贼了!让人都不敢买新车,旧车这么难找,麻烦死了!