咳,长夜漫漫,无心睡眠,在这反思这几个月自己都做了些什么……

      今天终于把WLAN GUI发现的Bug都解了,还有没有Bug,谁也不知道,正如安全与破解的关系(有安全就会有破解。这样就不断推动计算机安全技术向前发展,当然破解技术也在发展哦)。有Bug就要解Bug,这样系统就会不断完善(呵呵,也有可能将系统变得越来越烂哦,所以Bug不能乱解)

       想想这段时间,从很难看懂C code到能够修修补补、删删改改;从拿到那些code不知从何“吃”起,到大体能找到“下口”的地方,这几个月的我似乎有所成长。这几周,都在忙WLAN的GUI——初步做出GUI、解GUI的一些Bug。学到了不少东西,也积累了一些经验。将ASCIIExtended换成ASCII所引起的问题、一个正常的函数调用返回奇怪的值等等这是以前在所遇不到的。更重要的是——学到了一些解决问题的方法[刚来的时候,遇到问题,很茫然,也许这就是传说中的经验吧!]。很感谢“老人们”的帮助。

      不过好像很久没看书、文档了,书可是个好东西,可以在精神上富裕自己[难怪成了“月光族”,原来好久没看书了]。书、文档和Code如果能很好的结合起来,也许会成长的更好一点。Thinking……

-----------------------------------------------------------------------

PS:“无语的教训”

/*大概如下*/

file a.h

#########

typedef struct a{

     int num;

    char name[32];

    char addr[32];/*和file b.h 中struct a 不一样哦*/

    int sex;

    ……

} ;

############

file a.c

###########

#include a.h

struct a men;

int copyAToB(struct a *val){

     ……

     copy(val,&men);/*copy 将men内容拷到val*/

     ……

}

##########

file b.h

typedef struct a{

     int num;

    char name[32];

     int sex;

   ……

} ;

########

file b.c

#include b.h

extern int copyAToB(struct a *val);

int getData(){

  ……

 int ret=0;

 struct a val; 

ret=copyAToB(&val);

……

}

/*以上code只是用于说明问题*/

有可能导致在file b中,经过copyAToB后,val的值并不是你所期待的,甚至会有乱七八糟的值出现,也许你会习惯的认为是不是函数没将值带回。其实真正的原因在于——file a.h、file b.h都定义了struct a,可是这两个struct a 的成员是不一样的,当编译器编译a.c时会将val按照a.h中定义的struct a来编译,而在b.c中的val将被按照b.h中定义的struct a来编译。