这两天发现了一个微软的非常有意思的bug。
说有意思是因为这个bug不是存在于程序中,而是存在于头文件中。
这个bug的现象是这样的:
如果在你的工程中有下面的内容:
#include<wab.h></wab.h>
那么你的工程是编译不过去的,不出意外的话编译错误是C1004,同时指示你出错的文件是wabtags.h。
花费了一些时间,最终确定问题出在微软身上。
在wabtags.h中,某些注释的*号前面,存在一个不可打印字符,其值是0xA0.
在英文平台下这不是问题,编译器简单的略过注释内的任何字符。
但在中文平台下问题就出来了。0xA0是GB2312字符集的合法leadbyte(所谓leadbyte是指两个字节一个字符(比如汉字)的
第一个字节)。
所以编译器把0xA0和后面的*看作双字节字符集的一个字符。于是整个文件就变成不符合语法规则的了。
由这个问题起,我把微软所有的头文件稍描了一下。发现包含无效字符的情况还满多的,只不过绝大多时候,这些无效字符并
不产生问题(因为他们在注释里并且没机会吞掉正常字符)。
而这些问题应该存在了5年还多。
前一阵有人给我回复说:不要说什么设计师,在微软做个程序员,要比你设计师强多了。
姑且不从对与否来看这句话,至少可以看到对微软的一种盲目崇拜。我想这种想法也具有相当的代表性。
带着这种情绪去工作会有问题的。
不要忘了微软的程序,也是人写的,所以他们也会犯错。
扩展来说,大师的话也是人说的,所以也会有错误。
说句老话,相信别人的时候,别忘了相信自己。
分享到:
相关推荐
微软的RAID/BMS系统是一个强大的Bug数据库,它记录和控制整个产品组的进度,为Bug的查询、跟踪、报表等提供了工具支持。一个完整的Bug记录应包含状态、负责人、问题类型、严重程度、优先级等关键信息。Bug的严重程度...
在SQL Server 2005中,全文检索是数据库系统中的一个重要特性,它允许用户执行复杂的文本搜索,提高数据检索的效率。然而,正如标题所提及的,SQL Server 2005的全文检索功能存在一些已知的问题,尤其是与SQL Server...
access2002”指的是一个用于管理软件错误或缺陷(通常称为BUG)的应用程序的源代码,该程序支持Microsoft Access 97、2000和2002这三个版本。这些版本的Access是微软开发的关系数据库管理系统,广泛应用于数据管理和...
Connect是微软提供的一个平台,让用户能够提交问题报告、建议或参与产品的测试反馈。以下是如何注册并使用Connect账号的详细步骤: 1. 访问Connect官网:首先,你需要访问微软Connect的官方网站,其地址是...
.net针对全角bug微软补丁 NDP20-KB925488-X86
微软的TFS(Team Foundation Server)提供了强大的Bug管理功能,与Visual Studio(VS)深度集成,同时支持Java和iOS版本的插件,使得开发人员能更高效地处理Bug。本教程将详细介绍如何使用TFS进行Bug生命周期的管理...
感触还是有的,现对于某几个相关的问题写了一些个人的想法,这次说的是关于bug曲线图的问题, 我们大部分人都知道所有的测试执行完成后,都会有测试报告,而测试报告的一个最关键的因素就是bug曲线图,一般都会有2...
总之,微软的Bug管理策略通过细致的角色分工、高效的项目管理流程、以Bug为核心的开发实践以及严格的DailyBuild机制,形成了一个全面的质量保障体系,为软件的高效率开发与高质量交付奠定了坚实的基础。
在软件开发中,bug是不可避免的,BugFree提供了一个高效的平台来记录、跟踪、修复这些问题,确保项目的顺利进行。 BugFree的主要功能包括: 1. **问题创建**:用户可以创建新的bug报告,包括详细描述bug的现象、...
总的来说,Bugfree是一个实用的bug管理系统,它充分利用了JSP的动态网页能力和MySQL的数据管理优势,为软件开发团队提供了一个便捷的工具,以更好地追踪、管理和解决项目中的bug,从而提升整个项目的质量和效率。...
总的来说,BugFree 2.0 是一个实用的缺陷管理工具,尤其适合中小型企业或开源项目使用。通过有效的缺陷跟踪和团队协作,它能够帮助提升软件质量,优化开发流程。对于初次接触BugFree的用户,推荐先了解其基本概念和...
这是个全是bug的项目,可以学习常见的问题,如何找错及改正 设计技术:jdbc,swt,oracle,java http://blog.csdn.net/q176782/article/details/71597988
这种“三权分立”的模式保证了各个角色之间的有效协作和相互制衡,避免了一个角色独揽大权导致的问题。 ##### 2. 配套的研发工具 使用高效的工具能够显著提升BUG管理的效率。微软采用了一系列配套工具,如...
bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree
本文将深入探讨这一主题,从多个角度解析其重要性、作用以及如何通过数据分析提升软件测试效率。 ### 一、软件测试与bug统计 软件测试旨在验证软件的功能、性能、安全性等是否符合预期需求,及时发现并修复缺陷...
"BUG记录模版(带汇总、统计、分析功能)"是一个专门设计用于提高缺陷管理效率的文档模版,旨在为开发人员、测试人员和项目经理提供一个统一的标准格式,以便更有效地处理问题。 首先,让我们详细了解一下BUG模版的...
如果一个BUG可以轻松地被重现,这表明问题可能具有普遍性,需要立即解决。测试人员应记录每次尝试重现BUG的难度,并据此给出相应的分数。例如,每次操作都能立即复现的BUG可得1分,而难以复现的BUG则得分更高。这样...