Иногда для операндов в операциях, например, в операциях сравнения, требуется совместимость типов операндов. Совместимость типов, кроме того, является важной предпосылкой для совместимости по присваиванию.
Совместимость типов имеет место, если выполняется по крайней мере одно из следующих условий:
§ оба типа являются одинаковыми (имеют одинаковые описания);
§ оба типа являются вещественными типами;
§ оба типа являются целочисленными;
§ один тип является поддиапазоном другого;
§ оба типа являются поддиапазонами одного и того же основного типа.
Именованные константы
Выражения-константы
Выражение-константа представляет собой выражение, которое может вычисляться компилятором (без выполнения программы).
Поскольку компилятор должен иметь возможность полностью вычислить выражение-константу во время компиляции, в выражениях-константах не допускается использовать:
– ссылки на переменные и типизированные константы;
– вызовы функций (за исключением стандартных функций).
Примеры выражений-констант:
(2000-20)/2, Chr(255), ’ошибка №’+’2’;
Нетипизированные константы
Нетипизированные константы фактически является числом, закрепленным за определённым именем. Нетипизированным константам не выделяется область памяти для хранения значения. Прежде чем начать процесс компиляции, в тексте программы выполняется замена идентификаторов нетипизированных констант на их значения. Следовательно, внутри раздела операторов блока нельзя использовать операторы, изменяющие значение нетипизированных констант.
Синтаксис описания нетипизированных констант (раздел const):
Ид_конст1 = выражение_константа1;...
Ид_констN = выражение_константаN;
Примеры описания нетипизированных констант:
const
Min = 10;
Max = 100;
Mid = (Max-Min)/2;
Beta = Chr(255);