122
C.4. Описание модуля UniLEX
символом. Например, для входного потока 1234xyz в качестве результата
возвращается 1234 и параметр E = 4. Ошибка индицируется только если входной
поток не содержит в своем начале символьное предствление числа (например,
ABC1234 или --1234). Начальные пробелы пропускаются. Если число - вещественное,
хотя и процедура предназначена обрабатывать только целые числа, она может и не
сигнализировать об ошибке в некоторых случаях. Например, 123.45 будет
анализированным как 123 и параметр E = 3. Но .123, считается ошибкой.
function GetReal(const Src; i: word; l: word; var e: word): Real;
Действие: Действие этой функции аналогично действию функции GetInteger. Разница в
том, что она делает преобразование символьного представления вещественных
чисел (подчиненного синтаксису языка UniPascal) в соответствующее ему
внутреннее представление.
procedure Real2Str(R: real; W: Natural; var S: string[79]);
Действие: Действие этой процедуры обратно действию функции GetReal. Она делает
преобразование внутреннего представления вещественного числа в
соответствеющее ему символьное представление. Символьное представление
должно иметь заданное параметром W число цифр за десятичной точкой. Эта
процедура работает как стандартная процедура WRITE(R:0:W), но ее результат
не записывается в текстовой файл, а в строку, заданную параметром S.
procedure Exp2Str(R: real; W: Natural; var S: string[15]);
Действие: Действие этой процедуры аналогично действию процедуры Real2Str, только
символьное представление должно быть в экспоненциальной форме.
Параметром W определяется число символов (для цифр, точки, порядка и
знака), которое должно содержать символьное представление. Минимальное
значение W - 8, а максимальное - 15 (как при WRITE(R:W)).
procedure Int2Str(Value: LongInt; var s: string[11]);
Действие: Действие этой процедуры аналогично действию процедуры Real2Str, только она
делает преобразование внутреннего представления целого числа в его
соответствующее символьное. Символьное представление занимает столько
позиций, сколько необходимо, но не больше 11 (10 цифр и знак).
procedure Long2Str(Value: LongWord; var s: string[8]);
Действие: Действие этой процедуры аналогично действию процедуры Int2Str. Но она
делает преобразование внутреннего представления целого числа из двойного
слова в соответствующее ему символьное представление в шестнадцатеричной
системе счисления. Символьное представление занимает 8 символов, по одному
для каждой половины байта двойного слова.
procedure Word2Str(Value: word; var s: string[4]);
Действие: Действие этой процедуры аналогично действию процедуры Long2Str. Но она
делает преобразование целого числа из слова, а не из двойного слова.
Символьное представление занимает 4 символа.
procedure Byte2Str(Value: byte; var s: string[2]);
Действие: Действие этой процедуры аналогично действию процедуры Long2Str. Но она
делает преобразование целого числа из байта, а не из двойного слова.
Символьное представление занимает 2 символа.
<<  <  GO  >  >>

Вернуться к началу сайта