Поделиться Поделиться

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЮ ТУРБО-ПАСКАЛЯ

СТАНДАРТНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ

Принятые обозначения:

type -любой тип;

string - любой строковый тип;

file -любой файловый тип;

scalar - любой простой тип;

pointer -любой ссылочный тип.

Замечание: если в списке параметров не указан спецификатор типа, то в качестве данного параметра процедура допускает параметр любого типа; в некоторых процедурах допускаются несколько вариантов заголовков процедур.

ПРОЦЕДУРЫ ВВОДА-ВЫВОДА

ПроцедураRead

Read(var F:file of type; var v:type);

Read(var F:text; var I':intnger);

Read(var F:text; var R:real);

Read(var F:text; var C:char);

Read(var F:text; var S:string);

где F - имя переменной файлового типа, a var I,R,C,S - одна или несколько переменных, совпадающих по типу с типом элементов файла.

Процедура Readln

Readln(var F:text; var varl,var2,...varN);

Readln(var varl ,var2,...varN);

Readln(var F:text);

Readln;

где F - имя переменной типа text, a varl...varN - переменные типа Char. Если опущено имя файла, то по умолчанию принимаетсяимя типа INPUT. Если опущея список переменных, то происходит переход на другую строку.

Процедура Write

Write(var F:file of type; var v:type);

Write(var F:text; var I:integer);

Write(var F:text; var B:boolean);

Write(var F:text; var C:char);

Write(var F:text; var S:string).

ПроцедураWriteln

Writeln(var F:text; var varl ,var2,... varN);

Writeln(var var varl ,var2,... varN);

Writeln(var F:text);

Writeln.

СТАНДАРТНЫЕ ФУНКЦИИ

Функции арифметические

Abs(x); Arctan (x); Cos (x); Exp (x); Ln (x); Sin (x); Sqr (x); Sqrt (x)

имеют стандартный смысл. Функция

fruc(R:Real):Real;fruc(I:Integer):Real

возвращает значение дробной части своего аргумента.

Функция

int (R:real):real; int (I:integer):real;

возвращает значение целой части своего аргумента.

Функции скалярные

Odd(x); Pred(x); Succ(x)

имеют стандартный смысл.

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

Chr (x); Ord (x); Round (x); Trunc (x) имеют стандартный смысл.

СТРОКОВЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ

Процедура Delete (var S:Strina;Pos, Len: Integer) убирает из строки S Len символов, начиная с Pos. Если Len больше длины S, то ничего не происходит. Если Pos+Len больше длины строки, то удаляются все символы до конца строки.

Процедура Insert (S:String; var D:String;Pos:Integer) вставляет строку S в строку D перед символом с номером Pos. Если Pos больше длины D, то S и D соединяются. Если длина результата при этом больше максимальной длиныD, то в D записываются только самые левые символы.

Процедура Str (I:Integer; var S: String); Str (R:Real; var S:String) преобразует I или R из числа в строку и записывает эту строку в S, причем R и I могут записыватьсяформально, т.е. как в процедурах Write и Writeln.

Процедура Val (S:String; var R:Real; var P:Integer); Val (S:String; var I,P:Integer) преобразует строковую переменную S в число (тип зависит от типа переменной I или R соответственно). Если в строке S ошибок нет. то Р равно 0, иначе значение R (или I) не определено, а Р присваивается номер первого ошибочного символа.

Функция Concat (Sl,S2,....Sn:string):String возвращает строку, полученную конкатенацией строк Sl,...,Sn. Если длина результата больше 255, то возникает ошибка времени выполнения.

Функция Copy (S:String; Pos,Len:Integer):String возвращает строку, полученную из Len символов строки S, начиная с позиции Pos. Если Pos больше, чем длина строки S, то возвращается пустая строка. Если Pos+Len больше, чем длина строки S, то возвращаются только символы, принадлежащие строке S.

Функция Length (S:Strina):Integer возвращает длину строки S.

Функция Pos (Pattern,Sourse:String):Integer возвращает номер символа, начиная с которого Pattern входит в Sourse. Если вхождения нет, то возвращается 0.

ПРОЦЕДУРЫ И ФУНКЦИИ ДЛЯ РАБОТЫ С ФАЙЛАМИ

Процедура Assign (var F:File: Name:String); Name - имя файла на диске, F – имя файловой переменной. После выполнения этой процедуры Name и F отождествляются. Assign не должна применяться к файлу, находящемуся в употреблении.

Процедура BlockRead (var F:File; var Dest:Type; Num:Integer)

F -нетипизируемый файл, Dest -переменная,

Num - количество 128-баитных записей, которые должны быть перенесены из дискового файла в переменную.

Процедура BlocKWrite (var F:File; var Dest:Type; Num:Integer) I Num - количество 128-баитных записей, которые должны быть перенесены из переменной в дисковый файл.

Процедура Chain (var F:File) активизирует CHN-файл, с которым предварительной процедурой Assign было отождествлено имя F.

Процедура Close (var F:File); дисковый файл, отождествленный с переменной F, закрывается и в директорию диска вносятся необходимые изменения.

Процедура Erase (var F:File); дисковый файл, отождествленный с переменной F, уничтожается.

Процедура Execute (var F:File) загружает и выполняет файл с диска, с которым предварительно процедурой Assign было отождествлено имя F.

Процедура Rename (var F:File; Name:String); дисковому файлу, отождествленному с переменной F, присваивается новое имя Name. Rename не должна применяться к уже открытому файлу.

Процедура Reset (var F:File) открывает файл F для чтения и ставит указатель на начало файла.

Процедура Rewrite (var F:File) открывает файл F для записи, чистит его и ставит указатель на начало файла.

Процедура Seek (var F:Fileof type; Pos:Integer) устанавливает указатель файла F на Pos элемент файла.

Процедура Flush (var F:File) очищает буфер дискового файла, отождествленного с переменной F. Гарантирует, что следующая операция чтения будет произведена непосредственно с диска. Должна применяться к уже закрытым файлам.

Функция Eof (var F;File):boolean возвращает TRUE, если найден конец файла.

Функция Eoln (var F:Text):boolean возвращает TRUE, если найден конец строки или конец файла F.

Функция Filepos (var: F: File of Type):Integer; Filepos (var: F:File):Integer возвращает текущую позицию указателя файла.

ФункцияFilesize (var: F: File ofType):Integer;Filesize(var: F:File):Integer возвращает текущее количество элементов файла.

ПРОЦЕДУРЫ И ФУНКЦИИ ДЛЯ РАБОТЫ СО ССЫЛОЧНЫМИ СТРУКТУРАМИ

Процедура Getmem (var P:Pointer; I:Integer) отводит под область памяти, на которую будет ссылаться переменная Р, 1 байт памяти.

Процедура Mark (var P:Pointer) запоминает текущий указатель «кучи» в переменной Р.

Процедура New (var P:Pointer) отводит место в памяти под переменную того типа, на который указывает Р.

Процедура Release (var P.Pointer) ставит указатель «кучи» на значение переменной Р. Переменная Р должна быть предварительно обработана процедурой Mark. Уничтожаются все динамические переменные, расположенные в памяти после последнего вызова процедуры Mark.

ФункцияMemAvai :Integer возвращает размер доступной для динамических переменных памяти.

Функция Ord (P:Pointer):Integer возвращает адрес переменной ссылочного типа Р.

Функция Ptr (I:Integer):Rointer возвращает ссылку на адрес памяти I.

ПРОЦЕДУРЫ ДЛЯ РАБОТЫ С ТЕКСТОВЫМ ЭКРАНОМ

ПроцедураCrtExit- выдача на экран строки сброса экрана, определенной в инсталляторе.

ПроцедураCrtlnit - выдача на экран строки инициализации экрана, определенной в инсталляторе.

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

ПроцедураCIrScrочищает экран.

Процедура DelLine- удаление строки, на которой находится курсор, и сдвиг всех строк, находящихся ниже этой строки, на одну вверх.

ПроцедураGotoXY(X,Y:Integer) - позиционирование курсора по координатам XnY.

Процедура InsLine- вставка пустой строки на место курсора и сдвиг всех строк, находящихся под этой строкой на одну вниз.

ПРОЧИЕ ПРОЦЕДУРЫ И ФУНКЦИИ

Процедура Bdos (func,param:Integer) - вызов функции Bdos с номером func, которая заносится в регистр С, и параметром param, который заносится в регистровую пару DE.

Процедура bios(func,param:Integer) - вызов функции Bios с номером func и параметром param. который заносится в регистровую пару ВС.

ПроцедураDelay(Ms:Integer) - задержка программы на Ms миллисекунд.

ПроцедураFillChar(vardest; length:Integer;data:Char);FillChar(vardest;

length:Integer;data:Byte) - заполнение length байт памяти величиной data. Начало участка памяти - адрес переменной dest.

ПроцедураHalt- аварийный выход из программы.

Процедура Move (var sourse.dest:length:Integer) - пересылка length байт, расположенных в памяти, начиная с первого байта переменной sourse, в участок памяти длины length, начинающийся с первого байта переменной dest.

Процедура Randomise - инициализация генератора случайных чисел.

Функция Addr (var variable):Integer; Addr (<function identifier>):Integer;

Addr(<procedure identifier>):Integer возвращает адрес первого байта своего аргумента.

Функция Bdos (funk,param:Integer):Byte аналогична соответствующей процедуре. Возвращает значение регистра А.

Функция BdosHL (funk,param:Integer):Integer аналогична функции Bdos. Возвращает значение регистровой пары HL.

Функция Bios (funk, param :Integer):Byte аналогична соответствующей процедуре. Возвращает значение регистра А.

Функция BiosHL (func.param:Integer):Integer аналогична функции Bios. Возвращает значение регистровой пары HL.

Функция Hi (I:Integer):Integer возвращает число, младший байт которого содержит старший байт параметра. Старший байт результата равен 0.

Функция IOresult :Integer работает после директивы компилятору $1-. Значение 0 соответствует отсутствию любой ошибки ввода-вывода. В противном случае возвращается произвольное ненулевое число.

Функция KeyPresscd :Boolean возвращает TRUE, если нажата любая клавишанаклавиатуре, и FALSE в противном случае.

Функция Lo (I:Integer):Integer возвращает число, младшийбайт которого содержит младший байт параметра. Старший байт результата равен 0.

Функция Random (I:Integer):Integer; Random:Real возвращает случайное число. Для первого варианта вызова это число лежит в интервале от 0 до 1, для второго -от 0 до 1.

Функция Size0f (var variable):Integer; Size0f (<type identifier>):Integer возвращает размер (в байтах) своего аргумента.

Функция Swap (I:Integer):Integer возвращает число, у которого по сравнению с аргументом поменялись местами первый и второй байты.

Функция UpCase (Ch:Char):Char возвращает верхнийрегистр данного символа. Если такового нет, то возвращается аргумент.

Функция ParamCount :Integer; возвращает число параметров в строке вызова СОМ-файла.

Функция ParamStr (n:Integer):String[14]; возвращает n-параметр из строки вызова СОМ-файла.

ПроцедураExit- выполнение этой процедуры эквивалентно передачи управления на последний END процедуры, функции или основной программы, где выполнена процедураExit.

← Предыдущая страница | Следующая страница →