在过去的编程语言中,如FORTRAN和早期的BASIC,每条语句都占据一行,因此需要在语句前面加上行号。然而,行号并不仅仅表示行的序号,它实际上是一种数字标记,类似于C语言中的标签(label)用法。只有在需要行号的语句前才写行号,而不需要行号的语句则可以省略行号。在FORTRAN语言中,写上行号并不会导致错误,只是多余的内容而已。
早期的BASIC语言也采用了行号,由于BASIC是一种解释语言,可以逐行将源代码通过键盘输入给解释器,而不是先将代码写入文件再交给解释器运行(BASIC语言甚至可以在没有操作系统和文件系统的计算机上运行)。在这种情况下,行号发挥了两个作用:首先,以数字开头告诉解释器这是源代码的一行而不是立即执行的命令,让解释器先将其保存以备使用;其次,行号确定了每个语句的顺序,虽然行号可以不连续,但必须按照从小到大的顺序排列,即使在输入时无序,解释器也会在内部按照行号顺序重新排列。如果输入了错误的语句,只需要用正确的语句替换具有相同行号的错误语句即可。
为了方便在输入后进行调试和修改,BASIC语言的行号通常会跳跃式地增加,一般每行增加10,这样在10和20语句之间插入13和17两条语句就很方便了。由于BASIC的广泛使用,有些人在编写FORTRAN程序时也养成了每行都写上行号且行号按固定间隔增加的习惯。然而,这个习惯并不是理想的,因为在阅读FORTRAN代码时,人们会特别关注带有行号的语句,通常这些语句涉及重要、复杂或难以理解的功能。如果代码中到处都是行号,会分散注意力。刚好,我这里有嵌入式学习路线,毕设,各种项目,需要留个6。
综上所述,过去在编写程序时在语句前面加上行号是为了满足特定编程语言的需求,但这种习惯并不被广泛认可,因为它可能分散阅读者的注意力。
刚好我整理了一套嵌入式学习方向,其中技巧和干货简直满满,里面包含了编程教学、问题视频讲解、毕设800套和语言类教学,只需要回复个6,免费发给你,一条龙服务让你毫无顾虑好好学习