Изучение языка программирования
Турбо Паскаль (Turbo Pascal)

На этом сайте можно: скачать среду программирвания Турбо Паскаль, изучить язык программирования Турбо Паскаль, а так же скачать программы на языке Турбо Паскаль!
Процедуры и функции модуля System.tpu
(продолжение 1)

Функция Concat

Назначение: Выполняет конкатенацию последовательности строк.
Описание: function Concat(s1, [s2, ..., sn]: String): String;
Примечания: Каждый параметр является выражением строкового типа. Результат представляет собой конкатенацию (объединение) всех строковых параметров. Если длина результирующей строки превышает 255 символов, то она усекается до 255 символов. Использование операции + дает тот же результат, что и вызов функции Concat:

Пример 20.1

VAR
 st1,st2: string;
BEGIN
 st1:=Concat('ABCD','EFH');
 st2:='ABCD'+'EFH';                 { результат: st1=st2='ABCDEFH' }
END.
Процедура Continue

Назначение: Продолжает выполнение оператора for, while или repeat.
Описание: procedure Continue;
Примечания: Continue приводит к выполнению следующей итерации самого внутреннего оператора for, while или repeat. Если вызов Continue содержится вне указанных операторов цикла, то компилятор выведет сообщение об ошибке.

Пример 20.2

VAR
 i: byte;
BEGIN
 for i:=1 to 20 do
  begin
   writeln('i=',i);
   Continue;                                  { продолжить цикл (сверху) }
   writeln('Эта строка не будет написана.');
  end;
END.
Функция Cos

Назначение: Возвращает косинус аргумента.
Описание: function Cos(x: Real): Real;
Примечания: Параметр x является выражением вещественного типа. Результатом будет косинус x. Предполагается, что это значение задает угол в радианах, т.е. x - это радианы, а не градусы.

Пример 20.3

VAR
 a:real;
BEGIN
 a:=Cos(1710);                  { результат ~ 0.56 }
END.
Функция CSeg

Назначение: Возвращает текущее значение регистра CS.
Описание: function CSeg: Word;
Примечания: Результат длиной в слово представляет собой адрес сегмента для той части программы, из которой была вызвана функция CSeg.

Пример 20.4

VAR
 x: word;
BEGIN
 x:=CSeg;
 writeln(x);
END.
Процедура Dec

Назначение: Уменьшает значение переменной.
Описание: procedure Dec(var x[; n: Longint]);
Примечания: Параметр x представляет собой переменную перечислимого типа, а n - целочисленное выражение. Значение x уменьшается на 1 (или на n в случае явного задания n). То есть Dес(x) соответствует x:=x-1, а Dес(x,n) соответствует x:=x-n. Функция Dес порождает оптимизированный код и особенно полезна в больших циклах.

Пример 20.5

VAR
 x: word;
BEGIN
 x:=10;
 Dec(x);                        { уменьшить x на 1 (x=9) }
 Dec(x,3);                      { уменьшить x на 3 (x=6) }
END.
Процедура Delete

Назначение: Удаляет из строки подстроку.
Описание: Delete(var s: String; Indx: Integer; Count: Integer);
Примечания: Параметр s представляет собой выражение строкового типа. Параметры Indx и Count являются выражениями целого типа. Функция Delete удаляет символы, количество которых соответствует параметру Count, начиная с символа строки s, номер которого задан параметром Indx. Если значение параметра Indx превышает длину строки, то символы не удаляются. Если параметр Count задает больше символов, чем остается в строке, начиная с символа Indx, то удаляется остаток строки.

Пример 20.6

VAR
 st: string;
BEGIN
 st:='треугольник';
 Delete(st,4,7);                { результат: st='трек' }
END.
Процедура Dispose

Назначение: Уничтожает динамическую переменную.
Описание: procedure Dispose(var p: Pointer [, Destructor]);
Примечания: Параметр p является переменной-указателем и может иметь тип, соответствующий любому типу указателя. Для этого параметра должно быть предварительно выполнено присваивание с помощью процедуры New или ему должно быть присвоено значащее значение с помощью оператора присваивания.

Данная процедура уничтожает переменную, на которую указывает p и возвращает занимаемую ей память в динамически распределяемую область памяти. Значение p становится неопределенным, и последующие ссылки вида p^ являются ошибкой. Ограничения: Если p не указывает на область в динамической памяти (p=nil), то происходит ошибка этапа выполнения.

Пример 20.7

VAR
 p: ^string;
 x,y,z:word;
BEGIN
 x:=maxavail;                      { сколько памяти сначало            }
 New(p);                           { занять память для переменной      }
 y:=maxavail;                      { сколько осталось памяти           }
 Dispose(p);                       { освободить память                 }
 z:=maxavail;                      { сколько памяти после освобождения }
 writeln('Было памяти =',x);
 writeln('Заняли под переменную, стало =',y);
 writeln('Освободили память =',z);
END.
Функция DSeg

Назначение: Возвращает текущее значение регистра DS.
Описание: function DSeg: Word;
Примечания: Результат длиной в слово представляет собой адрес сегмента данных.

Пример 20.8

VAR
 x: word;
BEGIN
 x:=DSeg;
 writeln(x);
END.
Функция Eof

Назначение: Возвращает состояние "конец файла" (end-of-file) для текстовых файлов.
Описание: function Eof[ (var f: Text) ]: Boolean;
Примечания: Параметр f представляет собой файловую переменную. Если этот параметр опущен, то используется стандартная файловая переменная Input. Если текущая позиция в файле находится за последним элементом файла или если файл не содержит никаких элементов, то функция Eоf(f) возвращает значение Truе. В противном случае она возвращает значение False.

При указании директивы компилятора {$I+} функция IОRеsult будет возвращать значение 0 в том случае, если операция завершилась успешно, и ненулевой код ошибки в противном случае.

Пример 20.9

VAR
 f: text;
 s: char;
BEGIN
 assign(f,'test.txt');
 reset(f);             { октрыть файл для чтения                          }
 repeat
  read(f,s);           { считать из файла 1 символ                        }
  write(s);            { отобразить символ на экран                       }
 until Eof(f);         { повторять пока не будет конец файла, Eof(f)=true }
 close(f);
END.
Функция Eoln

Назначение: Для файлов возвращает состояние "конец строки" (end-of-line).
Описание: function Eoln [ (var f : text) ]: Boolean;
Примечания: Параметр f представляет собой файловую переменную, определяющую текстовый файл. Если этот параметр опущен, то подразумевается использование стандартной файловой переменной Input. Если текущая позиция в файле находится на метке конца строки, то функция Eоln(f) возвращает значение Truе. В противном случае она возвращает значение False.

При проверке состояния "конец строки" для стандартного ввода, направление которого изменено не было, следующая программа ожидает, пока не будет введен символ возврата каретки, а затем передает управление функции Eoln.

BEGIN
 writeLn(Eoln);        { Это приведет к тому, что программа будет ожидать }
                       { ввода с клавиатуры                               }
END.
При указании директивы компилятора {$I+} функция IORеsult будет возвращать значение 0 в том случае, если операция завершилась успешно, и ненулевой код ошибки в противном случае.

Пример 20.10

VAR
 f: text;
 s: char;
BEGIN
 assign(f,'test.txt');
 reset(f);            { октрыть файл для чтения                            }
 repeat
  read(f,s);          { считать из файла 1 символ                          }
  write(s);           { отобразить символ на экран                         }
 until Eoln(f);       { повторять пока не будет конец строки, Eoln(f)=true }
 colose(f);
END.
Процедура Erase

Назначение: Стирает внешний файл.
Описание: procedure Erase (var f);
Примечания: Параметр f представляет собой файловую переменную любого файлового типа. Внешний файл, связанный с переменной f, стирается.

При указании директивы компилятора {$I-} функция IORеsult будет возвращать значение 0 в том случае, если операция завершилась успешно, и ненулевой код ошибки в противном случае. Ограничения: Процедура Erase не должна использоваться для открытого файла.

Пример 20.11

VAR
 f: text;
BEGIN
 assign(f,'test.txt');
 Erase(f);            { удалить файл test.txt }
END.

<<< Назад * Оглавление * Далее >>>