Введение

Идентификатор последовательности символов в текстовом файле.
В вычислительной технике номер строки — это метод, используемый для указания конкретной последовательности символов в текстовом файле. Наиболее распространенный способ присвоения номеров строкам — присваивать каждой строке уникальный номер, начиная с 1 для первой строки и увеличивая на 1 для каждой последующей строки. В языке программирования C номер строки исходного кода на единицу больше, чем количество символов новой строки, прочитанных или введенных до этого момента. Программисты также могли присваивать номера строк операторам в более старых языках программирования, таких как Fortran, JOSS и BASIC. В Fortran не каждому оператору требовался номер строки, и номера строк не обязательно должны были быть последовательными. Назначение номеров строк заключалось в использовании для ветвления и ссылок в операторах форматирования. И JOSS, и BASIC сделали номера строк обязательным элементом синтаксиса. Основная причина этого заключалась в том, что большинство операционных систем того времени не имели интерактивных текстовых редакторов; поскольку интерфейс программиста обычно ограничивался редактором строк, номера строк предоставляли механизм для ссылки на конкретные строки в исходном коде для редактирования, а также позволяли программисту вставлять новую строку в определенное место. Номера строк также обеспечивали удобный способ различать код, предназначенный для ввода в программу, и команды прямого доступа, которые должны были выполняться немедленно при вводе пользователем (у которых не было номеров строк). В значительной степени благодаря распространению интерактивного редактирования текста в современных операционных системах, номера строк больше не являются особенностью большинства языков программирования, включая современные Fortran и Basic.

Кобол

В COBOL номера строк указывались в первых шести символах (область порядкового номера) перфокарт. Изначально это использовалось для упрощения механической сортировки карт с целью обеспечения правильной последовательности кода программы после ручной обработки. Компилятор фактически игнорировал эти номера строк.

Допинг

В 1962 году DOPE (Dartmouth Oversimplified Programming Experiment) стал одним из первых языков программирования, требовавших указания номера строки для каждой инструкции и использовавших последовательную нумерацию строк. Номера строк служили адресами назначения для двух команд: C (операция сравнения, арифметический условный переход) и T (операция перехода, GO TO).

Номера строк и стиль

В этих языках было принято, если не являлось прямой необходимостью, оставлять промежутки между последовательными номерами строк, то есть программист использовал бы последовательность (10, 20, 30, ) вместо (1, 2, 3, ). Это позволяло программисту вставлять строку кода позднее. Например, если строка кода между строками 20 и 30 была пропущена, программист мог вставить забытую строку под номером 25. Если промежутков в нумерации не было, программисту потребовалось бы перенумеровать строку 3 и все последующие строки, чтобы вставить новую строку после строки 2. Разумеется, если программисту нужно было вставить более девяти дополнительных строк, перенумерация потребовалась бы даже при более редкой нумерации. Однако эта перенумерация ограничивалась перенумерацией всего одной строки на каждые десять добавленных строк; когда программист понимал, что ему нужно добавить строку между 29 и 30, перенумеровать требовалось бы только строку 30, а строка 40 могла остаться без изменений. Некоторые версии BASIC имели команду, которая обычно просматривала программу (или её указанную часть), переназначая номера строк с равными интервалами. Она также перенумеровывала все ссылки на эти номера строк, чтобы они продолжали работать корректно. В большой программе, содержащей подпрограммы, каждая подпрограмма обычно начиналась с номера строки, достаточно большого, чтобы оставить место для расширения основной программы (и предыдущих подпрограмм). Например, подпрограммы могли начинаться со строк 10000, 20000, 30000 и так далее.

Число строк и синтаксические ошибки

Если программист допустит синтаксическую ошибку в программе, компилятор (или интерпретатор) сообщит программисту о неудачной попытке компиляции (или выполнения) и укажет номер строки, в которой произошла ошибка. Это значительно облегчает программисту поиск ошибки. Использование номеров строк для указания местоположения ошибок остается стандартной практикой в современных инструментах программирования, даже несмотря на то, что номера строк не нужно указывать вручную. Программа может просто подсчитать количество переводов строк в исходном файле и отобразить автоматически сгенерированный номер строки как местоположение ошибки. В интегрированных средах разработки (IDE), таких как Microsoft Visual Studio, Eclipse или Xcode, где компилятор обычно интегрирован с текстовым редактором, программист может даже дважды щелкнуть по сообщению об ошибке и сразу перейти к строке, содержащей эту ошибку.