Что такое length в паскале

Что такое length в паскале

Функция Length в Паскале определяет длину строки. Синтаксис:

function Length(S : AStringType) : Integer;

Второй вариант для динамических массивов:

function Length(A : DynArrayType): Integer;

Функция возвращает длину строки S, которая ограничена значением 255 для коротких строк (в классическом Паскале — это максимальная длина строки). Если S — это пустая строка, то функция возвращает 0.

Функция Length может вычислять длину строки для типов AnsiString и WideString.

Для динамических массивов функция возвращает количество элементов в массиве.

Функция определения длины строки Length также поддерживает параметры типа PChar и PWideChar. В этом случае она работает также, как функции StrLen и WStrLen соответственно. В этом случае функция вычисляет длину строки с нулевым окончанием (с завершающим нулём), а время её выполнения пропорционально длине строки, потому что завершающий нулевой символ ищется путём последовательного перебора всех символов строки.

Как определить длину строки в Паскале

Думаю, уже понятно, что сделать это можно с помощью функции Length. Например, так:

Однако есть и другой способ, о котором мало кто знает. Правда, этот способ можно использовать только с типом ShortString. Но в большинстве случаев этого строкового типа вполне достаточно.

Этот способ позволяет немного сэкономить процессорное время, так как для его использования не требуется тратить это время на вызов функции.

А суть его проста. Дело в том, что в типе ShortString длина строки хранится в нулевом элементе строки. Как известно, в Паскале отсчёт символов в строке начинается с единицы. Однако в типе ShortString есть и нулевой элемент, в котором и хранится длина строки:

Проблема только в том, что эта длина строки хранится как ASCII-код символа, и получить этот элемент можно только как символ. Но это не беда, потому что мы уже умеет преобразовывать символ в его код с помощью функции Ord.

Читайте также:  Hp pavilion g6 amd a10 драйвера

Пример программы см. в конце статьи.

Как задать длину строки в Паскале

В некоторых случаях для экономии памяти можно задать фиксированную длину строки.

Делать это можно, когда вы точно уверены, что для ваших нужд в вашей программе потребуется, например, строка, в которой будет не более какого-то определенного количества символов.

Задать длину строки в Паскале можно так:

Затем с этими переменными можно работать как с обычными строками. Только следует помнить, что при попытке поместить, например, в s04 строку длиной более 4 символов, в эту строку будут помещены только первые четыре символа, а остальные будут отброшены.

Ниже приведён пример программы, где рассмотрены все вышеописанные случаи:

Функция Length возвращает в качестве значения длину строки. Например, если в строковой переменной «stroka» записано слово «Pascal», то Length(stroka) будет равно 6. Эта операция аналогична операции Ord(stroka[0]), которую мы разбирали в 1-м уроке. Функция Concat выполняет слияние нескольких строк в одну строку. Например, если в переменной «stroka» записано слово «Turbo», а в переменной «stroka2» записано слово «Pascal», то concat(stroka,stroka2) будет равно «Turbo Pascal».

Использование функции LENGTH.

В строке №7 выводим на экран значение функции Length(stroka). Так как в переменной «stroka» записано слово «Pascal», то на экран будет выведено число 6.

Функция Concat. Данная функция выполняет слияние нескольких строк в одну строку. Эта операция аналогична операции сцепления строк (конкатенации), которую мы рассматривали в прошлом уроке. Функция Concat соединяет строки, указанные в скобках после слова Concat в одну строку.

Использование функции CONCAT

Строка №3. Записываем 4 переменные, в которых будут храниться строковые значения.

Строка №6. Переменной «stroka1» присваиваем значение «Programmirovanie».

Строка №7. Переменной «stroka2» присваиваем значение «na».

Читайте также:  Errno 13 permission denied python

Строка №8. Переменной «stroka3» присваиваем значение «Pascal».

Строка №9. В переменную «stroka» записываем значение функции Concat(stroka1,stroka2,stroka3). Она соединит значения, записанные в переменных stroka1,stroka2,stroka3.

Строка №10. Выводим на экран результат.

Дополнение к материалу.

В случае если при соединении строк длина получившейся строки превысит 255 символов, то строка будет усечена после 255-ого символа.

Задача

Определить длину строки, введенной пользователем.

Решение

s – строка;
len – ее длина.

Алгоритм решения задачи:

  1. Введенная пользователем строка записывается в переменную s.
  2. Результат выполнения функции length(s) сохраняется в переменной len и, затем, выводится на экран.
Ссылка на основную публикацию
Adblock detector