含义详解
本义指计算机编程中一种无条件转移控制权的语句,使程序执行跳转到程序内指定的标号(label)位置。其引申义在日常语境中可指“直接转向某个话题或行动”,但这一用法较为少见。在编程领域,GOTO语句因容易导致代码结构混乱(“面条式代码”)而备受争议,常被建议用结构化控制流(如循环、函数调用)替代。
英 /ɡəʊ tuː ˈsteɪtmənt/美 /ɡoʊ tu ˈsteɪtmənt/
n. 名词
转向语句;程序控制跳转指令
本义指计算机编程中一种无条件转移控制权的语句,使程序执行跳转到程序内指定的标号(label)位置。其引申义在日常语境中可指“直接转向某个话题或行动”,但这一用法较为少见。在编程领域,GOTO语句因容易导致代码结构混乱(“面条式代码”)而备受争议,常被建议用结构化控制流(如循环、函数调用)替代。
GOTO由英文单词“go to”去掉空格合并而成,最初源自汇编语言中的“jump”指令。在早期高级语言(如FORTRAN、COBOL)中,GOTO成为标准关键字。构词简单,直接由动词短语复合而成,便于记忆:它表示“去往某处”,即程序控制流转向指定位置。
主要出现在计算机科学教材、编程参考手册、技术博客及代码注释中。在学术写作中,讨论结构化编程或软件工程时可能提及GOTO的危害(如Dijkstra的著名论文)。在日常口语或非技术交流中极少使用,除非以比喻方式指“直接跳到某话题”。在技术面试或代码评审中,GOTO的使用常被视为负面信号。
GOTO是名词,作主语或宾语。在编程语言中,GOTO语句通常后跟一个标签(label),如“GOTO 100”或“goto end;”。在英语表达中,常见句型为“use a GOTO statement”或“avoid GOTO statements”。易错点是将GOTO与“go to”混淆,注意GOTO是专有名词,在书面语中常大写或使用等宽字体。
与“jump statement”近义,但GOTO特指无条件跳转,而“jump”更通用,可能包括条件跳转。与“branch”相比,branch通常指条件分支,而GOTO是无条件的。在高级语言中,GOTO常被“break”、“continue”、“return”等结构化语句替代,这些语句提供了更受控的跳转方式。
GOTO属于计算机专业术语,语域较高,在非技术语境中可能不被理解。它带有负面色彩,尤其在软件工程领域,因为过度使用会导致代码难以理解和维护。常见误用包括在技术文章中拼写为“Go to statement”或“GOTO statement”混用,实际应统一为“GOTO statement”。
| The programmer used a GOTO statement to jump to the error handling routine. | 程序员使用GOTO语句跳转到错误处理例程。 |
| Many coding standards prohibit the use of GOTO statements. | 许多编码标准禁止使用GOTO语句。 |
| In the 1960s, GOTO was a common feature in programming languages like FORTRAN. | 在20世纪60年代,GOTO是FORTRAN等编程语言的常见特性。 |
| The debate about GOTO statements was sparked by Edsger Dijkstra's letter titled 'Go To Statement Considered Harmful'. | 关于GOTO语句的争论由艾兹格·迪杰斯特拉题为《Go To语句有害》的信件引发。 |
| Refactoring the code to replace GOTO with loops and functions improved readability. | 重构代码,用循环和函数替换GOTO,提高了可读性。 |