Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Контрольные вопросы экзамену программирование.doc
Скачиваний:
5
Добавлен:
16.04.2019
Размер:
264.19 Кб
Скачать

Использование операции @ для переменной

Использование операции @ для обычной переменной (не параметра) не вызывает никаких сложностей. Применение @ к ссылке на переменную возвращает указатель на переменную. Введем описания:

type

TwoChar = array[0..1] of char;

var

Int: integer;

TwoCharPtr: ^TwoChar;

тогда оператор:

TwoCharPtr := @Int;

приводит к тому, что TwoCharPtr для получения ссылки на TwoCharPtr^ становится повторной интерпретацией значения Int, как если бы оно было символьным массивом array[0..1].

Тип получаемого в результате указатель управляется директивой компилятора $T: в состоянии {$T-} (по умолчанию) типом результата будет Pointer. Другими словами, результат ом является нетипизированный указатель, совместимый со всеми другими типами указателей. В состоянии {$T+} типом результата будет ^T, где T тип ссылки на переменную. То есть тип результата будет совместим со всеми другими указателями на тип этой переменной.

Примечание: К использованию операции @ с процедурным типом применяются специальные правила. См. ниже раздел "Процедурный типы в выражениях".

Использование операции @ для процедуры или функции или метода

Вы можете применять операцию @ к процедуре, функции или методу. При этом вы получите указатель на точку входа подпрограммы. Независимо от состояния $T, типом полученного в результате указателя всегда будет Pointer. Другими словами, результатом всегда является нетипизированный указатель, совместимый со всеми другими ссылочными типами.

При применении операции @ к методу метод должен задаваться с помощью уточненного идентификатора (идентификатора объектного типа, за которым следует точка и идентификатор метода).

  1. Стандартные функции языка Паскаль. Арифметические функции

Арифметические функции можно использовать только с величинами целого и вещественного типа.

Функция

Назначение

Тип результата

abs (x)

абсолютное значение аргумента

совпадает с типом аргумента

sqr (x)

квадрат аргумента

совпадает с типом аргумента

sqrt (x)

квадратный корень аргумента

вещественный

cos (x)

косинус аргумента

вещественный

sin (x)

синус аргумента

вещественный

arctan (x)

арктангенс аргумента

вещественный

exp (x)

ex

вещественный

ln (x)

натуральный логарифм

вещественный

int (x)

целая часть числа

вещественный

frac (x)

дробная часть числа

вещественный

Функции преобразования типов

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

ord (x)

- возвращает порядковый номер аргумента и, таким образом, преобразует величину порядкового типа в величину целого типа.

round (x)

- округляет вещественное число до ближайшего целого.

trunk (x)

- выдает целую часть вещественного числа, отбрасывая дробную.