Читаем Язык программирования Euphoria. Справочное руководство полностью

Выдаёт текущий дальний адрес защищенного режима для обработчика прерывания номер i. Ряд s будет иметь 2 элемента: {16-битный сегмент, 32-битное смещение}.

Пример:

s = get_vector(#1C)

-- s будет содержать дальний адрес обработчика

-- прерывания от таймера, например: {59, 808}

Пример программы:

demo\dos32\hardint.ex

См. также:

set_vector, lock_memory

getc

Синтаксис:

i = getc(fn)

Описание:

Считывает и выдаёт следующий символ (байт) из файла или с устройства fn. Коды символов будут иметь величину от 0 до 255. При достижении конца файла выдаётся -1.

Комментарии:

Ввод из файла с использованием функции getc() буферизируется, т.е. getc() не обращается к диску за каждым очередным символом. Напротив, большой блок символов сразу считывается в буфер, но из памяти буфера символы выдаются по одному.

Когда getc() читает с клавиатуры, никакие символы не будут видны, пока пользователь не нажмёт Enter. Заметьте, что набранное пользователем на клавиатуре сочетание control-Z трактуется операционной системой как "конец файла". В этом случае вместо кода символа будет выдана -1.

См. также:

gets, get_key, wait_key, open

getenv

Синтаксис:

x = getenv(s)

Описание:

Выдаёт значение переменной окружения DOS. Если переменная с именем, заданным в строковом ряде s, не определена, выдает -1.

Комментарии:

Так как функция может выдавать или ряд, или атом (-1), переменная, которой присваивается значение функции, должна быть объявлена как объект.

И аргумент, и выдаваемая величина могут быть или не быть чувствительными к регистру букв. Вы должны проверить это на своей системе.

Пример:

e = getenv("EUDIR")

-- e будет равно "C:\EUPHORIA" -- или, возможно, D:, E: и т.д.

См. также:

command_line

gets

Синтаксис:

x = gets(fn)

Описание:

Считывает и выдаёт очередной ряд символов из файла или с устройства fn (одну строку, включая '\n'). Коды символов будут иметь величины от 0 до 255. При достижении конца файла выдаётся атом -1.

Комментарии:

Так как функция выдаёт или ряд, или атом (-1), вы должны объявить как объект переменную, которой будет присвоено значение функции.

После чтения строки текста с клавиатуры вы обычно должны будете вывести символ окончания строки, '\n', т.е. подать команду puts(1, '\n'), прежде чем печатать что-либо другое. Иначе печать не начнётся от левого края экрана, а будет продолжаться вслед за той строкой, которая была введена с клавиатуры. Только при достижении конца последней строки экрана операционная система автоматически произведёт прокрутку экрана и переведёт курсор в начало следующей строки.

Последняя строка файла может не иметь символа перевода строки '\n' в конце.

Заметьте, что когда ваша программа читает с клавиатуры, набранное пользователем на клавиатуре сочетание control-Z трактуется операционной системой как "конец файла". В этом случае вместо кода символа будет выдана -1.

В режимах SVGA DOS может устанавливать неверную позицию курсора после вызова gets(0) для чтения с клавиатуры. Вы должны установить необходимую вам позицию сами, применив процедуру position().

Пример 1:

sequence buffer

object line

integer fn

-- читает текстовый файл в ряд

fn = open("myfile.txt", "r")

if fn = -1 then

puts(1, "Не могу открыть myfile.txt\n")

abort(1)

end if

buffer = {}

while 1 do

line = gets(fn)

if atom(line) then

exit -- -1 выдана в конце файла

end if

buffer = append(buffer, line)

end while

Пример 2:

object line

puts(1, "Как вас зовут?\n")

line = gets(0) -- читает стандартный вход (клавиатуру)

line = line[1..length(line)-1] -- удаляет символ \n в конце

puts(1, '\n') -- необходимо

puts(1, line & " - хорошее имя.\n")

См. также:

getc, puts, open

graphics_mode

Платформа:

DOS32

Синтаксис:

include graphics.e

i1 = graphics_mode(i2)

Описание:

Включает видеорежим i2. Просмотрите файл graphics.e, в котором имеется список доступных под управлением Euphoria пиксельных и текстовых видеорежимов. Если заданный режим включен успешно, i1 устанавливается в 0, в противном случае i1 устанавливается в 1.

Комментарии:

Некоторые видеорежимы называются текстовыми, так как в них может отображаться только текст и псевдографика. Другие видеорежимы называются пиксельными, потому что в них вы можете включать отдельные пикселы (элементы разрешения экрана), вычерчивать линии, эллипсы и т.д. и одновременно печатать текст.

Перейти на страницу:

Все книги серии Euphoria

Язык программирования Euphoria. Справочное руководство
Язык программирования Euphoria. Справочное руководство

Euphoria (юфо'ри, также рус. эйфори'я, ра'дость) — язык программирования, созданный Робертом Крейгом (Rapid Deployment Software) в Канаде, Торонто. Название Euphoria — это акроним для «End-User Programming with Hierarchical Objects for Robust Interpreted Applications».Euphoria — интерпретируемый императивный язык высокого уровня общего назначения. C помощью транслятора из исходного кода на Euphoria может быть сгенерирован исходный код на языке Си, который в свою очередь может быть скомпилирован в исполнияемый файл или динамическую библиотеку при помощи таких компиляторов, как GCC, OpenWatcom и др. Программа Euphoria также может быть «связана» с интерпретатором для получения самостоятельного исполняемого файла. Поддерживается несколько GUI-библиотек, включая Win32lib и оберток для wxWidgets, GTK+ и IUP. Euphoria имеет встроенную простую систему баз данных и обертки для работы с другими типам баз данных.[Материал из Википедии]

Коллектив авторов

Программирование, программы, базы данных

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных