с любой программой, поэтому объявленные
Приложение 2
ПЕРЕМЕННЫЕ, ПРОЦЕДУРЫ И ФУНКЦИИ МОДУЛЯ SYSTEM
Модуль SYSTEM автоматически связывается с любой программой, поэтому объявленные в его интерфейсной части типы, константы, переменные и подпрограммы доступны программисту в любой момент. В этом приложении приводится (в алфавитном порядке) список всех объявлений модуля в его интерфейсной секции. Следует заметить, что большинство объявлений осталось неизменным еще со времен давнего предшественника Delphi - системы программирования Turbo Pascal. Кроме того, многие подпрограммы описаны в других разделах книги (работа с файлами, с вариантами, преобразование строк и т. п.).
function Abs(X) ; | Возвращает абсолютную величину выражения x (целого или вещественного типа) |
function Addr(X): Pointer; | Возвращает адрес переменной или подпрограммы х |
var AllocMemCount: Integer; | Возвращает полное количество блоков памяти, выделенных программе |
var A11 о cMemS ize: Integer; | Возвращает полное количество памяти (в байтах), выделенное программе |
procedure Append (var F: Text); | Открывает текстовый файл f для добавления новых строк |
function ArcTan(X: Extended): Extended; | Возвращает Арктангенс (в радианах) x |
procedure Assert (expr : Boolean [;const msg: Strings; | Проверяет условное выражение ехрг. Выдает сообщение msg и останавливает программу, если выражение имеет значение False, в противном случае ничего не делает |
procedure AssignFile (var F; File Name: String) ; | Связывает файловую переменную F с файлом, указанным в FileName |
function Assigned (var P) : Boolean; | False, если указатель р связан с nil (т. е. не указывает на область памяти) |
procedure BlockRead(var F: File;
var Buf; Count: Integer [; var AmtTransferred: Integer]); |
Читает из файла, связанного с f, в буфер Buf не более count блоков и возвращает в AmtTransfered истинное количество прочитанных блоков |
procedure BlockWrite (var f: File;
var Buf; Count: Integer [; var pa Buf не более Count блоков и возвращает AmtTransferred: Integer]);procedure Break; |
Записывает в файл, связанный с F, в AmtTransfered истинное количество записанных блоковНемедленно прекращает выполнение циклов for, while или repeat |
procedure ChDir(S: Strings; | Изменяет умалчиваемый каталог на каталог, заданный выражением s |
function Chr(X: Byte): Char; | Преобразует байт х в символ |
procedure Close(var F) ; | Закрывает файл F |
procedure CloseFile(var F); | Закрывает файл f |
var CmdLine: PChar; | Содержит параметры запуска программы |
var CmdShow: Integer; | Содержит статус окна, открытого API-
функцией showwindow |
function CompToCurrency(acomp:
Comp): Currency; cdecl; |
Преобразует тип Comp к типу currency |
function CompToDouble(acomp:
Comp): Double; cdecl; |
Преобразует тип Comp к типу Double |
function Concat(sl [, s2,..., sn]: String): String; | Объединяет строки Si в единую строку |
procedure Continue; | Прекращает очередную итерацию цикла for, while или repeat |
function Copy(S; Index, Count:
Integer): Stringy; function Copy(S; Index, Count: Integer): array; |
Возвращает подстроку или сегмент динамического массива |
function Cos(X: Extended): Ex
tended/ |
Возвращает косинус аргумента X, заданного
в радианах |
procedure CurrencyToComp
(acurrency: Currency; var result: Comp); cdecl; |
Преобразует тип currency к типу Comp |
var DLLProc: Pointer; | Указывает точку входа в DLL-процедуру,
которая выполняется в данный момент |
procedure Dec(var X [ ; N: Long-
Int]); |
Уменьшает х на n, а если n опущено - на 1. х, n - любые порядковые типы, в том числе Int64 |
var Default8087CW: Word; | Содержит 0, если в ПК нет арифметического сопроцессора, в противном случае разряды слова указывают некоторые технические
параметры сопроцессора |
procedure Delete(var S: String;
Index, Count: Integer); |
Удаляет из строки s count символов начи
ная с символа с номером index |
procedure Dispose(var P:
Pointer) ; |
Освобождает память, связанную с указателем p |
function DoubleToComp(adouble:
Double; var result: Comp); cdecl; |
Преобразует тип Double к типу Comp |
var EmptyParam: OleVariant; | Указывает, что умалчиваемый параметр
дуального интерфейса не используется |
procedure EnumModules(Func:
TEnumModuleFunc; Data: Pointers- overload; procedure EnumModules(Func: TEnumModuleFuncLW; Data: Pointer); overload; |
Реализует обратный вызов (callback) для
всех модулей и всех пакетов программы |
procedure EnumResourceModules(Func: TEnumModuleFunc; Data: Pointer); | Реализует обратный вызов (callback) для всех ресурсных модулей программы |
procedure EnumResourceMod-
ules(Func: TEnumModuleFuncLW; Data: Pointer) ; |
|
function Eof(var F): Boolean; | Возвращает True, если достигнут конец файла f (любого типа) |
function Eoln [(var F: Text) ]:
Boolean- |
Возвращает True, если достигнут конец строки или конец текстового файла |
procedure Erase(var F) ; | Уничтожает файл, связанный с переменной F |
var ErrorAddr: Pointer; | Содержит адрес исполняемого оператора,
вызвавшего ошибку при прогоне программы |
var ErrorProc: Pointer; | Содержит адрес входа в умалчиваемый обработчик ошибок |
var ExceptProc: Pointed; | Содержит адрес входа в низкоуровневый
обработчик исключений |
procedure Exclude(var S: set of
T;I:T) ; |
Исключает элемент i из множества s |
procedure Exit; | Завершает работу подпрограммы |
var ExitCode: Integer; | Возвращает код завершения программы. В
современных разработках используйте для этих целей секцию finalization |
var ExitProc: Pointer; | Содержит адрес входа в процедуру завер
шения программы |
function Exp(X: Real): Real; | Возвращает х°, где е - основание натурального логарифма |
var FileMode: Byte; | Указывает режим файла, открытого процедурой Reset: 0 - только чтение; 1 - только запись; 2 - чтение и запись |
function FilePos(var F): Longint; | Возвращает текущую позицию в файле F |
function FileSize(var F): Integer; | Возвращает размер нетекстового файла |
procedure FillChar(var X; Count:
Integer; Value: Byte); |
Заполняет переменную х не более Count
байтами со значением value |
procedure Finalize( var V [;
Count: Integer] ) ; |
Освобождает динамически распределенную
память, связанную с F |
function FindClassHIn-
stance(ClassType: TClass): Long Word; |
Возвращает дескриптор модуля, в котором определен экземпляр класса ClassType |
function FindHInstance( Address:
Pointer): LongWord; |
Возвращает дескриптор модуля, в котором определен адрес Address |
function FindResourceHInstance
(Instance: LongHord): LongWord; |
Возвращает дескриптор ресурсного файла
для экземпляра instance |
procedure Flush(var F: Text); | Записывает буфер файла на диск |
function Frac(X: Extended): Ex
tended; |
Возвращает дробную часть х |
procedure FreeMem(var P:
Pointer[; Size: Integer]); |
Освобождает динамически распределенную
память, связанную с P |
procedure GetDir(D: Byte; var S: String) ; | Возвращает имя диска по его номеру |
procedure GetMem(var P: Pointer;Size: Integer); | Связывает с указателем p size байт динамической памяти |
procedure GetMemoryManager(var
MemMgr: TMemoryManager); |
Возвращает точку входа в менеджер динамической памяти |
procedure Halt [ ( Exitcode: Integer) ] ; | Прекращает выполнение программы с кодом завершения ExitCode |
var HeapAllocFlags: Word = 2; | Указывает, какую память получает менеджер динамической памяти от операционной системы (по умолчанию - gmemmoveable) |
function Hi(X): Byte; | Возвращает старший байт 16-разрядного числа |
function High(X); | Возвращает наивысшее значение диапазона порядкового типа, строки или открытого массива, к которому принадлежит х |
function lOResult: Integer; | Возвращает статус последней операции
ввода-вывода |
procedure Inc(var X [ ; N: LongInt ] ); | Наращивает х на n, а если n отсутствует - на
единицу |
procedure Include(var S: set ofT; I:T); | Включает элемент i в множество S |
procedure Initialize(var V [ ;
Count: Integer ] ); |
Инициализирует динамически распределенную переменную v, если она была создана не процедурой New |
var Input: Text; | Системный файл ввода |
procedure Insert(Source: String;
var S: String; Index: Integers; |
Вставляет подстроку source в строку s начиная с символа index |
function Int(X: Extended): Ex
tended; |
Возвращает целую часть вещественной переменной |
var IsConsole: Boolean; | Содержит True, если выполняется приложение консольного типа |
var IsLibrary: Boolean; | Содержит True, если выполняется подпрограмма из DLL |
function IsMemoryManagerSet: Boolean; | Возвращает True, если менеджер динамической памяти был изменен процедурой Set-MemoryManager |
var IsMultiThread: Boolean; | Содержит True, если в программе инициировано несколько потоков |
var JITEnable: Byte; | Указывает тип обработки исключения, возникающего в процессе отладки |
function Length (S): Integer; | Возвращает длину строки |
function Ln(X: Real): Real; | Возвращает натуральный логарифм х |
function Lo(X): Byte; | Возвращает младший байт аргумента |
function Low(X); | Возвращает наименьшее значение диапазона порядкового типа, строки или открытого массива, к которому принадлежит х |
var Mainlnstance: LongWord; | Содержит дескриптор экземпляра главного
модуля программы |
var MainThreadID: LongWord; | Содержит дескриптор главного потока для
текущего модуля |
const Maxint = High(Integer); | Содержит максимальное значение типа integer (2 147 483 647) |
const MaxLongint = High(Longint); | Содержит максимальное значение типа
Longint(2 147 483 647) |
procedure MkDir(S: String); | Создает новый каталог |
procedure Move(const Source; var
Dest; Count: Integers; |
Переносит не более count байт из источника Source в приемник Dest |
procedure New(var P: Pointer); | Создает новую динамическую переменную
и связывает ее с p |
var NoErrMsg: Boolean=False; | Указывает, будут ли ошибки периода исполнения программы сопровождаться сообщениями (False - будут) |
var Null: Variant; | Используется для указания значения Null переменной вариантного типа |
function Odd(X: Longint): Boolean; | Возвращает True, если аргумент - нечетное число |
procedure OleStrToStrVar (Source:
PWideChar; var Dest: String); |
Копирует “широкую” (двухбайтную) строку
в обычную строку Object Pascal |
function Ord(X): Longint; | Возвращает порядковое значение перемен
ной порядкового типа (в том числе и Int64) |
var Output: Text; | Файл системного вывода для консольных приложений |
function ParamCount: Integer; | Возвращает количество параметров запуска программы |
function ParamStr(Index: Integer) : String; | Возвращает параметр запуска под номером index (для index=0 - имя исполняемого файла) |
function Pi: Extended; | Возвращает число it=3,141592653589793 |
function Po3(Substr: String; S:String): Integer; | Возвращает номер символа, начиная с которого в строке s располагается подстрока Substr |
function Pred(X) ; | Возвращает предыдущее значение для выражения х порядкового типа |
function Ptr(Address: Integer):
Pointer; |
Преобразует Address в указатель |
var RandSeed: Longint; | Определяет стартовое значение для генератора псевдослучайных последовательностей |
function Random [ ( Range: Integer) ] ; | Возвращает очередное псевдослучайное число. |
procedure Randomize; | Инициирует генератор псевдослучайных последовательностей. |
procedure Read(var F / VI [/ V2,...,Vn ] ); | Читает из файла f заданное количество значений и помещает их в переменные vi |
procedure Readin([ var F: Text; ]
VI [, V2, . . ., Vn ] ) ; |
Читает из файла f заданное количество строк и помещает их в переменные vi |
procedure ReallocMem(var P:
Pointer; Size: Integers; |
Изменяет размер динамической переменной |
procedure Rename(var F; Newname:String) ;
procedure Rename(var F; Newname:PChar) ; |
Переименовывает файл, связанный с файловой переменной f |
procedure Reset(var F [: File;
RecSize: Word ] ) ; |
Открывает существующий файл для чтения и/или записи |
procedure Rewrite(var F: File [;
Recsize: Word ] ) ; |
Создает новый файл и открывает его для записи |
procedure RmDir(S: Strings; | Удаляет пустой каталог s |
function Round(X: Extended):
Int64; |
Округляет вещественное число до ближайшего целого |
procedure RunError [ ( Errorcode:
Byte ) ]; |
Останавливает работу программы и сообщает код ошибки |
procedure Seek(var F; N: Long-
Int) ; |
Пропускает n байт от начала файла |
function SeekEof [ (var F: Text)
]: Boolean; |
Пропускает все байты до конца файла |
function SeekEoln [ (var F: Text)
]: Boolean; |
Пропускает все символы текстового файла до конца текущей строки |
procedure Set8087CW(NewCW: Word); | Временно устанавливает новый режим работы арифметического сопроцессора |
procedure SetLength(var S;
NewLength: Integer); |
Устанавливает новую длину строки или
динамического массива |
procedure SetMemoryManager (const
MemMgr: TMemoryManager); |
Устанавливает новый менеджер динамической памяти |
procedure SetString(var s: String; buffer: PChar; len: Integer) ; | Копирует Len символов буфера Buffer в строку s |
procedure SetTextBuf(var F: Text;
var Buf [ ; Size: Integer] ); |
Устанавливает внешний буфер Buf длиной size символов для файловой переменной f |
function Sin(X: Extended): Ex
tended; |
Возвращает синус аргумента (в радианах) |
function SizeOf(X): Integer; | Возвращает длину переменной х в байтах |
function Slice(var A: array;
Count: Integer): array; |
Возвращает открытый массив, содержащий первые count элементов массива а |
function Sqr(X: Extended): Extended; | Возвращает квадрат аргумента |
function Sqrt(X: Extended): Extended; | Возвращает корень квадратный из аргумента |
procedure Str(X [: Width [: Decimals ] ]; var S) ; | Преобразует х целого или вещественного
типа в строку s с учетом длины width и количества знаков после запятой Decimals |
function StringOfChar(Ch: CharCount: Integer): String; | Создает строку, состоящую из Count раз повторенного символа Ch |
function StringToOleStr(const Source: String): PWideChar; | Копирует обычную строку в двухбайтную |
function StringToWideChar(const
Source: String; Dest: PWideChar; DestSize: Integer): PWideChar; |
Преобразует обычную строку в строку с
символами UNICODE |
function Succ(X) ; | Возвращает следующее значение для порядкового аргумента х |
function Swap(X) ; | Меняет местами байты в 16-разрядном слове |
function Trunc(X: Extended): Int64; | Преобразует вещественное число к целому путем отбрасывания дробной части |
procedure Truncate(var F) ; | Отсекает оставшуюся часть файла до его конца |
const Unassigned: Variant; | Используется для указания варианта с не
связанным (пустым) значением |
function UpCase(Ch: Char): Char; | Преобразует строчный символ Ch в заглавный |
procedure Val(S: String; var V;var Code: Integer); | Преобразует строковое значение в целую или вещественную величину |
function VarArrayCreate(const
Bounds: array of Integer; VarType: Integer): Variant; |
Создает вариантный массив |
function VarArrayDimCount(consfc
A: Variant): Integer; |
Возвращает количество измерении вариантного массива |
function VarArrayHighBound
(const A: Variant; Dim: Integer): Integers; |
Возвращает верхнюю границу измерения
вариантного массива |
function VarArrayLock(var A:
Variant): Pointers; |
Блокирует вариантный массив и возвращает указатель на его данные |
function VarArrayLowBound(const
A: Variant; Dim: Integer): Integer; |
Возвращает нижнюю границу измерения вариантного массива |
procedure VarArrayRedim(var A:
Variant; HighBound: Integer) ; |
Перестраивает вариантный массив |
function VarArrayRef(const A:
Variant): Variants- |
Преобразует вариантный массив к форме, необходимой при обращении к API- функциям |
procedure VarArrayUnlock(var A:
Variant) ; |
Отменяет действие функции VarArrayLock |
function VarAsType(const V: Variant; VarType: Integer): Variants; | Преобразует вариант к заданному типу |
procedure VarCast(var Dest: Variant; const Source: Variant; VarType: Integer); | Преобразует вариант к заданному типу и сохраняет результат в Dest |
procedure VarClear(var V : Variant) ; | Помещает в вариант пустое значение |
procedure VarCopy(var Dest: Vari
ant; const Source: Variants; |
Копирует вариант-источник Source в вариант-приемник Dest |
function VarFromDateTime
(DateTime: TDateTime): Variants; |
Преобразует дату-время в значение варианта |
function VarIsArray(const V:
Variant): Boolean; |
Возвращает True, если v - вариантный массив |
function VarIsEmpty(const V:
Variant): Boolean; |
Возвращает True, если вариант имеет пустое значение |
function VarIsNull(const V: Variant) : Boolean; | Возвращает True, если вариант имеет значение Null |
function VarToDateTime(const V:
Variant): TDateTime) ; |
Преобразует вариант в значение дата-время |
function VarToStr(const V: Variant) : String; | Преобразует вариант в строку. |
function VarType(const V: Vari
ant) : Integers; |
Возвращает тип хранящегося в варианте результата |
procedure WideCharLenToStrVar
(Source: PWideChar; SourceLen: Integer; var Dest: String); |
Преобразует не более SourceLen символов
строки UNICODE к обычной строке |
function WideCharLenToString
(Source: PWideChar; SourceLen: Integer): Strings; |
Преобразует не более SourceLen символов
строки UNICODE к обычной строке |
procedure WideCharToStrVar
(Source: PWideChar; var Dest: String); |
Преобразует строку UNICODE к обычной строке |