Основные теоретические сведения

Преимущества интерфейсов командной строки

- Мощный и быстрый вид взаимодействия для опытных пользователей

- Гибкий интерфейс, простота комбинирования команд и параметров

- Использование минимальной поверхности экрана

Для того чтобы получить доступ к параметрам переданным нашему консольному приложению на PASCAL нужно пользоваться массивом paramstr, размерность которого равна количеству параметров переданных системе, количество переданных параметров указано в переменной paramcount.

Например, алгоритм, приведенный ниже, позволяет считывать два параметра по ключам –log и –i вне зависимости от порядка их указания.

for i:=1 to (paramCount div 2) do begin

if paramStr(i*2-1)='-log' then

logFile:= paramStr(2*i);

if paramStr(i*2-1)='-i' then

inpFile:= paramStr(2*i);

end;

Т.е. оба варианта, приведенных ниже, будут эквивалентными

kursWork.exe –log mylog.txt –i result.txt

kursWork.exe –i result.txt –log mylog.txt

Целые типы. В TP имеется 5 стандартных типов целых чисел. Различаются они диапазоном, наличием или отсутствием знака, а также размером занимаемой памяти.

Тип Диапазон Формат Размер в байтах
Shortint -128.. 127 Знаковый
Integer -2147483648 ..2147483647 Знаковый
Longint -2147483648 ..2147483647 Знаковый
Byte 0 .. 255 Беззнаковый
Word 0 .. 65535 Беззнаковый

Вещественные типы. В TP имеется 5 стандартных типов вещественных чисел. Их характеристики приведены в таблице ниже.

Тип Диапазон Число значащих цифр Размер в байтах
Real 2.9´10–39 .. 1.7´1038 11-12
Single 1.5´1045.. 3.4´1038 7-8
Double 5.0´10324 .. 1.7´10308 15-16
Extended 3,4´104932 .. 1.1´104932 19-20
Comp -9.2´1018.. 9.2´1018 19-20

Замечание. Для типов Real, Single, Double, Extended диапазон допустимых значений указан по модулю.

Логический тип. Стандартный логический тип boolean представляет собой тип данных, любой элемент которого может принимать два значения true (истина) и false (ложь). Занимает в памяти 1 байт.

Символьный тип. Символьный тип данных char - это тип данных, элементами которого являются символы: буквы, цифры, знаки препинания и специальные символы. Каждому символу алфавита соответствует индивидуальный числовой код от 0 до 255. Занимает в памяти 1 байт.

Замечание. Наиболее распространенной международной согласованной системой кодирования всех символов является система ASCII. Символы с кодами от 0 до 127 представляют так называемую основную таблицу кодов ASCII.

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

Функция Назначение Тип результата
abs(x) абсолютное значение аргумента совпадает с типом аргумента
sqr(x) квадрат аргумента совпадает с типом аргумента
sqrt(x) квадратный корень аргумента вещественный
cos(x) косинус аргумента вещественный
sin(x) синус аргумента вещественный
arcian(x) арктангенс аргумента вещественный
exp(x) ех вещественный
ln(x) натуральный логарифм вещественный
frac(x) дробная часть числа вещественный

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

· IntToStr(х), StrToInt(х), FloatToStr(х), StrToFloat(х) – функции преобразования из модуля SysUtils

· Utf8ToAnsi(x), AnsiToUtf8(x)- – преобразование строки символов из Utf8 в Ansi код и обратно

· Round(x) - округляет вещественное число до ближайшего целого;

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

· Ord(x) - возвращает порядковый номер аргумента и, таким образом, преобразует величину порядкового типа в величину целого типа;

· Chr(x)- возвращает символ по его коду в ASCII таблице

ASCII — American Standard Code for Information Interchange — американский стандартный код для обмена информацией. ASCII представляет собой 8-битную кодировку для представления десятичных цифр, латинского и национального алфавитов, знаков препинания и управляющих символов. Нижнюю половину кодовой таблицы (0 — 127) занимают символы US-ASCII, а верхнюю (128 — 255) — разные другие нужные символы. Слово ASCII чаще употребляется в женском роде.

Таблица ASCII кодов

Основная таблица ASCII Расширенная таблица ASCII (cp866)
основные теоретические сведения - student2.ru основные теоретические сведения - student2.ru

Функцией для перекодирования символов из CP1251 в CP866 (необходима для корректного отображения русских символов в консоли):

function StrCharToOem(const aStr : String) : String;

var

Len : Integer;

begin

Result := '';

Len := Length(aStr);

if Len = 0 then Exit;

SetLength(Result, Len);

CharToOemBuff(PChar(aStr), PChar(Result), Len);

end;

В этой функции используется процедура CharToOemBuff которая описана в модуле Windows.

Наши рекомендации