犯了一个程序员的超低级错误

2009/11/30 14:29:24


阅读全文(5018) | 回复(4) | 编辑 | 精华

近段时间,单位一直在进行网络改造,由于改造规划的大方案是我定的,骨干网络建成后的内部的规划和配置也是由我进行,这样一来,我就可以把自己对网络建设和管理规的想法付诸于实际了,这是一个很令自己兴奋的事情。 但是,光有规划没有管理不行,所以现在我又把自己从一个网络管理员的身份抽出来,作为一个程序员开发一些配套的管理工具和软件。其中一个小工具就是自动检测分析和配置计算机网络连接属性的工具。写这个工具的目的是,当我这个身兼多职的网络管理员不能及时处理电脑联网故障时,稍懂一些“三角猫功夫”的同事可以拿一张网络管理工具盘去检测配置网络联接,解决一些简单的网络故障。 网络管理用得最多的,应该是命令行提示符,而自己也稍懂一点DOS批处理编程,于是就决定用批处理来写这个工具。代码到不长,但是一个超低级的错误,却害得我煞费苦心去调试代码,花了一个晚上调试都没通过。 早上去上班,打开笔记本再调试代码,一段一段用ECHO去跟踪调试,这才发现变量重名导致变量冲突了。规范的命名一般是不会出现变量重名的,只是不知道怎么会大意到出现这样的低级错误呢?为了认清CALL传参时,各参数容易识别,两次CALL同一LABEL时,分别使用大写变量名和小写变量名,但批处理是不区分大小写的,而且这个问题我还是很清楚的。原来是我喜欢在记事本上写JAVASCRIPT,也常用记事来写XML解决论坛上网友的问题,而JAVASCRIPT和XML严格区分大小写,所以,这段时间写代码写糊涂了,不加思索就应用于批处理。 问题总算是顺利解决了,可是这超低级的错误,却害得我白白浪费了一个晚上的时间去调试代码,得不偿失。经过这一次教训,再次调试代码时,我一定会留心变量的问题,不能只关心代码和语法正确与否。 从编程问题回到现实世界,我们在探究这个社会的同时,应该留意细节的问题,要不然对这个社会的认识就不全面,很容易在工作生活和学习过程中陷入误区而不能自拔。 P.S:后面这段显得有点夸张,同前面严重脱节,不过,今天在办公室里发生了一件不愉快的事情,似乎和上面的低级错误有相似之处,所以,我可以接受这个脱节,主要是提醒自己小心从事。

Qr

Posted by Qr on 2009/11/30 14:29:24

回复:犯了一个程序员的超低级错误

2010/2/11 10:03:32


个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除

预祝新春快乐!

烟雨朦胧

Posted by 烟雨朦胧 on 2010/2/11 10:03:32

回复:犯了一个程序员的超低级错误

2010/1/6 10:46:56

希望你快乐每一天!

烟雨朦胧

Posted by 烟雨朦胧 on 2010/1/6 10:46:56

回复:犯了一个程序员的超低级错误

2009/12/30 21:13:54

QR,请修改模版,把备案号(见首页底部)放上去,否则子域名无法开通。

徐涵(Han Xu)

Posted by 徐涵(Han Xu) on 2009/12/30 21:13:54

回复:犯了一个程序员的超低级错误

2009/12/3 23:31:37

批处理小任务比较方便,大任务调试就比较困难了。 我的坏毛病是无论大小都直接使用C++完成任务,有时候大炮打蚊子,不值

真不准

Posted by 真不准 on 2009/12/3 23:31:37

» 1 »

发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)
站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.047 second(s), page refreshed 144792654 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号