逻辑错误 (程序设计)

✍ dations ◷ 2025-07-26 13:45:45 #计算机错误,程序语言理论,程序设计小作品

在计算机程序设计中,逻辑错误(Logic error)(又叫语义错误)是程序错误的一种,这种错误会导致程序运行出错,但还不至于崩溃。逻辑错误会产生意外的输出或结果,但并不一定会立即被发现。

逻辑错误在编译语言和解释语言中都可能出现。与语法错误的程序不同的是,逻辑错误的程序从语法上来说是正确的一段程序,但其运行结果却与预期不符。逻辑错误的唯一表现就是错误的运行结果。

在 C++ 语言中,逻辑错误是一种特殊的异常()。

逻辑错误的原因可能是语句中出现了差错(比如公式写错)、算法中的错误,甚至是选择了错误的算法。此外还有一些其它原因,如类型转换错误、变量作用域错误、遗漏的代码段、对问题或需求的理解有误等等。

找出逻辑错误的办法之一,是将程序中的变量输出到文件或打印到屏幕,以定位错误所在。虽然这个办法不是所有情况下都适用,比如在调用了错误的子例程时就行不通,但是如果程序由于计算结果有误而出错,这种方法最容易找出问题。

以下用于计算平均数的C语言函数含有逻辑错误。代码中缺少了一对括号,因此程序虽然能够通过编译并运行,但由于运算符优先级(先乘除,后加减)的缘故,运算结果并不正确。

int average(int a, int b){    return a + b / 2;     /* 应为 (a + b) / 2 */}

参见

  • 语法错误
  • 差一错误

参考来源

  1. ^ 了解您的 Bug:三种编程错误. Microsoft. 


相关

  • 住院医师人体解剖学 - 人体生理学 组织学 - 胚胎学 人体寄生虫学 - 免疫学 病理学 - 病理生理学 细胞学 - 营养学 流行病学 - 药理学 - 毒理学医生又称医师,在中国古代称大夫或郎中
  • 营养体营养体(Trophosome;源自trophē),亦作滋养体,是一种在部分原口动物(例如:须腕科物种)体腔(英语:coelomic cavity)内的深绿棕色海绵组织器官,用来储存内共生细菌,以为其宿主提供完全营养。
  • 心室早期收缩心室早期收缩(Ventricular premature contraction,简称V.P.C.)是由心室的异位节律点发出激动波使心室提早收缩,即QRS综合波在P波前出现。此种收缩也会产生脉搏。且此种传导较
  • 塔斯曼尼亚坐标:42°10′46.88″S 146°38′43.83″E / 42.1796889°S 146.6455083°E / -42.1796889; 146.6455083塔斯马尼亚州(英语:Tasmania,缩写为TAS),简称塔州,是澳大利亚唯一的岛州,原
  • 正统正统(英语:Orthodoxy),它源自古希腊语:Ορθοδοξία(orthosdoxia),通常使用于宗教信仰上,指正确的信条。在基督教信仰上,正统信仰是指依照早期教会的信条来信仰基督。古希腊语:Ο
  • 乌梢蛇乌梢蛇(学名:Zaocys dhumnades)又名過山刀,是蛇亚目游蛇科乌梢蛇属下的一种无毒蛇类,主要分布于中国的上海、江苏、浙江、安徽、福建、河南、湖北、湖南、广东、广西、四川、贵州
  • 系统脱敏法系统脱敏法(英语:systematic desensitization),又称为渐进式暴露疗法(graduated exposure therapy),是一种认知行为疗法,由南非心理医生约瑟夫·沃尔普提出。系统脱敏法在临床心理学
  • 液化天然气液化天然气(英语:Liquefied Natural Gas;简称LNG),将气田生产的天然气经净化处理,去除了一些有价值的成分如氦,和一些高分子碳氢化合物,以及一些对下游产业不利的成分如硫、氮、水等
  • 亚洲政党国际会议Jose de Venecia(英语:Jose de Venecia)亚洲政党国际会议(英语:International Conference of Asian Political Parties,缩写为ICAPP),亚洲和大洋洲区域性国际组织,属该地区各个国家政
  • BrAnT.B小白BrAnT.B小白(1997年7月20日-),本名白曜隆,出生于西安市,中国大陆嘻哈饶舌男歌手,嘻哈团体《红花会》的成员之一。 2017年,参加爱奇艺Hip-hop音乐节目《中国有嘻哈》,进入前九强。因为