Специальные процедуры и функции 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Специальные процедуры и функции



Assert(E:Boolean[;S]) ‑ проверка истинности условия E при отладке прог­раммы. Если это условие ложно, то работа программы прекращается, генерируется исключение EAssertionFailed (п. 1.6.2) и выводится окно об ошибке с сообщением S, с именем программного файла и номером строки с этой процедурой. Процедура работает только при включенной директиве {$C+} (п.1.3.5.2). После отладки программы директива отключается{$C‑}.

Пример: Assert(Ukaz=Nil,’Нет значения адреса’);

ExceptAddr:Pointer ‑ возвращает адрес сгенерированного исключения. Ес­ли его нет, то возвращается Nil.

Halt[(N:Integer)] ‑ аварийное завершение программы с кодом N.

Hi/Lo (X):byte ‑ возвращает старший/младший байт аргумента X типов Integer, Word.

High/Low (X) ‑ возвращает наибольшее/наименьшее значение пере­мен­ной или типа X.

MaxIntValue/MinIntValue(D:Array Of Integer):Integer ‑ возвращает мак­си­маль­ное/минимальное значение массива целых чисел.

MaxValue/MinValue (D:Array Of Double):Double ‑ возвращает максималь­ное/минимальное значение массива вещественных чисел.

ParamCount ‑ возвращает число аргументов в командной строке.

ParamStr(N:Integer):String ‑ возвращает N‑й аргумент командной строки. При N=0 возвращается имя исполняемого файла с путем.

SizeOf(X) ‑ возвращает число байт, занимаемых аргументом или типом X.

Swap(X) ‑ производит перестановку старших и младших байт аргумента X типа Integer или Word.

UpCase(C:char):Chаr ‑ преобразует латинскую букву в прописную.

Сообщения Windows

PostMessage(Handle:HWnd;Msg,wParam:Word;lParam:LongInt):LongInt ‑ по­сылка сообщения Msg с дополнительными параметрами wParam и lParam окну с дескриптором Handle на обработку. Функция ставит сообще­ние в очередь на обработку сообщений Windows и возвращает управление, не дожидаясь завершения обработки сообщения. При успешном завер­ше­нии фукция возвращает ненулевое значение, иначе - возвращается ноль.

SendMessage(Handle:Hwnd;Msg, wParam:Word;lParam:LongInt):LongInt ‑ функция аналогична функции PostMessage, но ожидает завершения обработки сообщения (п.2.3.3.1).

Вопросы для самопроверки и контроля

Вопросы для самопроверки

1. Каково назначение функции ShellExecute?

2. Каково назначение функции InputBox?

Контрольные вопросы

2. Что возвращает функция ParamCount?

3. Каково назначение функции Application.MessageBox?

4. Каково назначение функции ParamStr?

Файлы

Типы файлов

При работе с файлами имеются три подхода: стандартный, ис­поль­зую­щий стандартные подпрограммы Паскаля (файлы Паскаля), объектный и использующий функции Windows (файлы Windows).

В первом подходе выделяются три типа файлов: типизированные, текстовые и не типизированные.

Общий порядок работы с файлами в любом подходе следующий: открытие файла, обработка и закрытие его.

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

Файлы Паскаля

Любые файлы

Нижеперечисленные функции используются в стандартном подходе. AssignFile(F;S) ‑ связывание имени файла S с файловой переменной F.

CloseFile(F) ‑ закрытие открытого файла F.

Eof(F):Boolean ‑ возвращает True при достижении конца файла.

Erase(F) ‑ удаляет с диска файл F.

FilePos(F):longint ‑ возвращает текущую позицию в нетекстовом файле F. Началу файла соответствует позиция 0.

FileSize(F):Integer ‑ возвращает текущий размер нетекстового файла.

IOResult:Integer ‑ возвращает код ошибки в последней выполненной опе­ра­ции ввода/вывода: 0 ‑ ошибок нет, 2 ‑ нет файла, 3 - ошибка в имени фай­ла, 4 ‑ много открытых файлов, 5 ‑ файл недоступен, 100 ‑ конец файла, 101 ‑ диск переполнен, 106 ‑ ошибка ввода‑вывода. Используется при ди­рективе компилятора {$I‑} (п.1.3.5.2).

Пример контроля операции открытия файла с помощью IOResult:

Var F: File of Byte; Begin AssignFile(F, ParamStr(1));

{$I‑}{отключение автоконтроля}Reset(F);{$I+}{включение автоконтроля}

If IOResult>0 Then Begin ShowMessage(‘Ошибка открытия’);Exit; End;End.

Rename(F;S) ‑ изменяет имя внешнего файла F на S.

Reset(F[;N:Word]) ‑ открывает существующий файл. N ‑ длина записи не‑ типизированного файла (128).

ReWrite(F[;N:Word]) ‑ создает и открывает новый файл F. N ‑ длина записи не типизированного файла (128). Если файл уже существует, то он уничтожается без предупреждения.

Truncate(F) ‑ усекает нетекстовый файл F на текущей позиции.

Типизированные файлы



Поделиться:


Последнее изменение этой страницы: 2017-02-08; просмотров: 274; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.59.218.147 (0.007 с.)