目录
1. 马赛勒航天飞机坠毁:
2. 2000年问题(Y2K Bug):
3. 阿里亚5号火箭爆炸:
4. Knight Capital Group的交易错误:
在编程历史上,有一些代码错误导致了严重的后果,可以被视为"愚蠢"的代码。以下是一些例子:
1. 马赛勒航天飞机坠毁:
1996年,欧洲航天局的马赛勒航天飞机在发射后几秒钟就坠毁了,原因是一个简单的转换错误。64位的浮点数被错误地转换为了16位的整数,导致溢出,最终导致飞机偏离了预定轨道。
2. 2000年问题(Y2K Bug):
在20世纪80年代和90年代,许多程序员为了节省存储空间,将年份的前两位省略,只使用后两位来表示年份。这导致当年份从1999年变为2000年时,许多计算机系统无法正确处理,因为它们将"00"解释为1900年,而不是2000年。
3. 阿里亚5号火箭爆炸:
1996年,阿里亚5号火箭在发射后40秒就爆炸了,损失约5亿美元。原因是一个64位的浮点数被截断为16位整数,导致系统崩溃。
4. Knight Capital Group的交易错误:
2012年,Knight Capital Group由于一个软件错误,在45分钟内亏损了4.4亿美元。错误的软件在股票市场上无节制地买卖股票,导致公司几乎破产。
这些例子都是由于编程错误或设计决策导致的严重后果,但这并不意味着编写这些代码的程序员是"愚蠢"的。相反,这些例子反映了编程中的困难和挑战,以及在设计和实现代码时需要考虑的各种因素。