Иллюстрированный самоучитель по Turbo Pascal

Строки

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

  • CONCAT(S1 [,S2,…, SN]) – функция типа STRING; возвращает строку, представляющую собой сцепление строк-параметров SI, S2,…, SN.
  • COPY(ST, INDEX, COUNT) – функция типа STRING; копирует из строки ST COUNT символов, начиная с символа с номером INDEX.
  • DELETE (ST, INDEX, COUNT) – процедура; удаляет СОUNT символов из строки ST, начиная с символа с номером INDEX.
  • INSERT (SUBST, ST, INDEX) – процедура; вставляет подстроку SUBST в строку ST, начиная с символа с номером INDEX.
  • LENGTH (ST) – функция типа INTEGER; возвращает длину строки ST.
  • POS (SUBST, ST) – функция типа INTEGER; отыскивает в строке STпервое вхождение подстроки SUBST и возвращает номер позиции, с которой она начинается; если подстрока не найдена, возвращается ноль.
  • STR(X [; WIDTH [: DECIMALS] ], ST) – процедура; преобразует число X любого вещественного или целого типов в строку символов ST так, как это делает процедура WRITELN перед выводом; параметры WIDTH и DECIMALS, если они присутствуют, задают формат преобразования: WIDTH определяет общую ширину поля, выделенного под соответствующее символьное представление вещественного или целого числа X, a DECIMALS – количество символов в дробной части (этот параметр имеет смысл только в том случае, когда Х – вещественное число).
  • VAL(ST, X, CODE) – процедура; преобразует строку символов ST во внутреннее представление целой или вещественной переменной X, которое определяется типом этой переменной; параметр CODE содержит ноль, если преобразование прошло успешно, и тогда в X помещается результат преобразований, в противном случае он содержит номер позиции в строке ST, где обнаружен ошибочный символ, и в этом случае содержимое Х не меняется; в строке ST могут быть ведущие пробелы, однако ведомые пробелы недопустимы; например, обращение val (' 123',k,i) пройдет успешно: k получит значений 123, в i будет помещен 0, в то время как обращение val (' 123 ', k, i) будет ошибочным: значение k не изменится, a i будет содержать 4.
  • UPCASE (СН) – функция типа CHAR; возвращает для символьного выражения СН, которое должно представлять собой строчную латинскую букву, соответствующую заглавную букву; если значением СН является любой другой символ (в том числе строчная буква русского алфавита), функция возвращает его без преобразования.

Примеры:

var
х: Real;
у: Integer;
st,st1: String;
begin
st: = concat('12','345'); {строка st содержит 12345}
st1: = copy(st,3,Length(st)-2); {st1 содержит 345}
insert('-',st1.2); {строка st1 содержит 3-45}
delete(st,pos('2',at),3); {строка st содержит 15}
str(pi:6:2,st); {строка st содержит 3.14}
val(''3.1415',x,y); {у содержит 2, х остался без изменения}
end.

Операции отношения =, 0, >, <, >=, <= выполняются над двумя строками посимвольно, слева направо с учетом внутренней кодировки символов (см. табл.4.1 и прил.2). Если одна строка меньше другой по длине, недостающие символы короткой строки заменяются значением СНR(0).

Следующие операции отношения дадут значение TRUE:

'''' < '. '
'А' > '1'
'Turbo' <' Turbo Pascal'
'Паскаль' >'Turbo Pascal'
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.