在计算机中,入口点是程序、模块或函数中代码开始的点;具体来说,是它开始的内存地址。在程序中,它是第一个代码模块,甚至是执行的第一行代码。在线性程序(例如 BASIC 或 COBOL)中,入口点实际上就是第一行代码。然后代码按顺序执行,直到执行某种跳转或调用。在模块化编程中,例如 C 编程语言的所有变体,入口点是起始模块。在 C 语言中,这是"Main()"函数。
在较旧的程序和操作系统中,程序可能有多个入口点,具体取决于正在执行的函数或系统。在大多数现代操作系统中,包括 Windows ® 和 Unix,程序是用支持单个入口点的语言编写的。即使在现代计算的早期,诸如 BASIC 之类的语言虽然具有程序的单个入口点,但可能会受到影响。支持"长跳转",程序可能不加区别地从一个模块"跳转"到另一个模块的入口点。这鼓励了所谓的"意大利面条代码",这种代码很难维护或修改。
入口点甚至可能不是指程序的入口点,而是可以是动态链接库(DLL)的入口点,它是在其他程序之间共享的小程序。控制键盘输入的 DLL 就是一个例子。无论程序、模块或函数的类型如何,入口点都是该代码段中进行处理的单个点。理解任何语言或修改和支持任何程序的关键在于理解入口是如何发布的。int 在特定程序或操作系统中被识别。
当计算机编程离开早期的完全线性方法时,就实现了入口点的概念。在那个时代,计算机程序从第一行代码开始,一次一行地执行直到过程结束。很快,循环、条件分支、递归等编程结构创建了功能上更高效的程序,但处理过程在代码中到处跳动。这些程序的性质意味着在处理实际开始之前可能有许多行或代码段。因此,创建并识别了入口点。
在 C 语言中,这成为 main() 函数。无论该函数存在于代码中的哪个位置,处理都是从那里开始的。在其他语言中,入口点并不是通过它们所在的位置来标识的,而是通过它们不存在的位置来标识的。程序的开头 might 包含变量声明和子例程的部分。默认情况下,这些区域或函数后面的第一行代码成为入口点。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!