为什么程序会有bug

2026年09月26日 14:28
有5个网友回答
网友(1):

所谓“(Bug)”,是指电脑系统的硬件、系统软件(如操作系统)或应用软件(如文字处理软件)出错。硬件的出错有两个原因,一是设计错误,一是硬件部件老化失效等。软件的错误全是厂家设计错误。那种说用户执行了非法操作的提示,是软件厂商不负责的胡说八道。用户可能会执行不正确的操作,比如本来是做加法但按了减法键。这样用户会得到一个不正确的结果,但不会引起bug发作。软件厂商在设计产品时的一个基本要求,就是不允许用户做非法的操作。只要允许用户做的,都是合法的。用户根本就没有办法知道厂家心里是怎么想的,哪些操作序列是非法的。
从电脑诞生之日起,就有了电脑BUG。第一个有记载的bug是美国海军的编程员,编译器的发明者格蕾斯·哈珀(Grace Hopper)发现的。哈珀后来成了美国海军的一个将军,领导了著名计算机语言Cobol的开发。
1945年9月9日,下午三点。哈珀中尉正领着她的小组构造一个称为“马克二型”的计算机。这还不是一个完全的电子计算机,它使用了大量的继电器,一种电子机械装置。第二次世界大战还没有结束。哈珀的小组日以继夜地工作。机房是一间第一次世界大战时建造的老建筑。那是一个炎热的夏天,房间没有空调,所有窗户都敞开散热。
突然,马克二型死机了。技术人员试了很多办法,最后定位到第70号继电器出错。哈珀观察这个出错的继电器,发现一只飞蛾躺在中间,已经被继电器打死。她小心地用摄子将蛾子夹出来,用透明胶布帖到“事件记录本”中,并注明“第一个发现虫子的实例。”
从此以后,人们将计算机错误戏称为虫子(bug),而把找寻错误的工作称为(debug)。

网友(2):

 Bug一词的原意是“臭虫”或“虫子”。但是现在,在电脑系统或程序中,如果隐藏着的一些未被发现的缺陷或问题,人们也叫它“bug”,这是怎么回事呢?
  原来,第一代的计算机是由许多庞大且昂贵的真空管组成,并利用大量的电力来使真空管发光。可能正是由于计算机运行产生的光和热,引得一只小虫子(Bug)钻进了一支真空管内,导致整个计算机无法正常工作。研究人员费了半天时间,总算发现原因所在,把这只小虫子从真空管中取出后,计算机又恢复正常。后来,Bug这个名词就沿用下来,用来表示电脑系统或程序中隐藏的错误、缺陷、漏洞等问题。
  1947年,计算机还是由机械式继电器和真空管驱动的,机器有房间那么大。体现当时技术水平的MarkⅡ,是由哈佛大学制造的一个庞然大物。当技术人员正在进行不整机运行时,它突然停止了工作。他们爬上去找原因,发现这台巨大的计算机内部一组继电器的触点之间有一只飞蛾,这显然是由于飞蛾受光和热的吸引,飞到了触点上,然后被高电压击死。
  与Bug相对应,人们将发现Bug并加以纠正的过程叫做“Debug”(中文称作“调试”),意即“捉虫子”或“杀虫子”。
  后来就直接用bug 在现在很多的软件测试中 都用Bug来说明那些问题。
  “Bug”的创始人 赫柏的报告格蕾丝·赫柏(Grace Murray Hopper),是一位为美国海军工作的电脑专家,也是最早将人类语言融入到电脑程序的人之一。而代表电脑程序出错的“bug” 这名字,正是由赫柏所取的。1945年的一天,赫柏对Harvard Mark II设置好17000个继电器进行编程后,她的工作却毁于一只飞进电脑造成短路的飞蛾。在报告中,赫柏用胶条贴上飞蛾,并把“bug”来表示“一个在电脑程序里的错误”,“Bug”这个说法一直沿用到今天。编辑本段游戏中的BUG 
现在软件和游戏等越来越复杂,需要考虑到的东西很多.往往是在设计之初会有一些逻辑上的错误出现,导致软件或者游戏出错,或者出现了不是设计者想要的情景.这些都是bug.

其实所有的程序基本上都是于if来组成的逻辑.
就像人的脑子一样,你喜欢吃冰棒,但是为什么会喜欢吃,是因为天热,冰棒甜,你平常都吃着,...等等 .那么到了程序中,就变成,判断你吃不吃冰棒,那就要计算冰棒本身的一些特征,再结合你的一些喜好这些复杂的过程来得出你喜欢不喜欢吃冰棒这个结论.如果其中的一个原因没有考虑到,而这个原因又是致命的.那就导致结果的变化.比如你是因为看到别人喜欢吃,而你就喜欢吃了.程序中没有考虑到,那结果就是致命错误.这就是一个bug,没有考虑到那个因素.

网友(3):

从去年10月份到现在,我的刺客号也是这种情况,除了刺客号,其他的号都很正常,就是刺客bug bug bug 搞得我心烦到死,游戏重装过不行,电脑系统换过还是不行...同求解

网友(4):

新手程序员为什么bug越改越多呢?应该怎么办?来听听吧

网友(5):

陀螺世界用4G网打不开,是不是出现了bug