W Cat - Язык программирования Euphoria. Справочное руководство
- Название:Язык программирования Euphoria. Справочное руководство
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
W Cat - Язык программирования 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 имеет встроенную простую систему баз данных и обертки для работы с другими типам баз данных.
[Материал из Википедии]
Язык программирования Euphoria. Справочное руководство - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Система координат, в которой отображаются символы, отличается от той, в которой отображаются пикселы. Пикселы отображаются так, что верхний левый находится в точке (x=0,y=0) и первая координата управляет горизонтальным положением, слева направо. Для символов же первая координата управляет вертикальным положением, сверху вниз, а верхний левый находится в позиции 1,1. В пиксельных режимах вы можете одновременно выводить на экран и пикселы, и текст. Функция get_position() выдаёт текущие строку и колонку для выводимого вами текста, а не для пиксела, который вы собираетесь включить. Соответствующая функция для получения текущей позиции пиксела в языке Euphoria отсутствует.
См. также:
position, get_pixel
get_screen_char
Синтаксис:
include image.e
s = get_screen_char(i1, i2)
Описание:
Выдаёт 2-элементный ряд s в форме {код ascii, атрибут}для символа на экране в строке i1, колонке i2. Ряд s состоит из двух атомов. Первый даёт код ASCII для символа. Второй же содержит информацию о цветах символа и фона и, возможно, другие данные, относящиеся к внешнему виду символа на экране.
Комментарии:
С помощью подпрограмм get_screen_char() и put_screen_char() вы можете запоминать и выводить на экран символы с их атрибутами.
Пример:
-- запоминает в ряде s символ и его атрибут из верхнего левого угла экрана
s = get_screen_char(1,1)
-- выводит из ряда s символ с его атрибутом в позицию строка 25, колонка 10
put_screen_char(25, 10, {s})
См. также:
put_screen_char, save_text_image
get_vector
Платформа:
DOS3 2
Синтаксис:
include machine.e
s = get_vector(i)
Описание:
Выдаёт текущий дальний адрес защищенного режима для обработчика прерывания номер i. Ряд s будет иметь 2 элемента: {16-битный сегмент, 32-битное смещение}.
Пример:
s = get_vector(#1C)
-- s будет содержать дальний адрес обработчика
-- прерывания от таймера, например: {59, 808}
Пример программы:
demo\dos32\hardint.e x
См. также:
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
Платформа:
DOS3 2
Синтаксис:
include graphics.e
i1 = graphics_mode(i2)
Описание:
Включает видеорежим i2. Просмотрите файл graphics.e, в котором имеется список доступных под управлением Euphoria пиксельных и текстовых видеорежимов. Если заданный режим включен успешно, i1 устанавливается в 0, в противном случае i1 устанавливается в 1.
Комментарии:
Некоторые видеорежимы называются текстовыми, так как в них может отображаться только текст и псевдографика. Другие видеорежимы называются пиксельными, потому что в них вы можете включать отдельные пикселы (элементы разрешения экрана), вычерчивать линии, эллипсы и т.д. и одновременно печатать текст.
Для более четкого возвращения в среду операционной системы обычно целесообразно перед завершением вашей программы перейти из пиксельного режима в стандартный исходный текстовый режим. Это можно сделать, вызвав функцию graphics_mode(-1). Если графическая программа приводит ваш экран в какое-то необычное беспорядочное состояние, вы можете очистить его с помощью команды DOS CLS, а также запустив интерпретатор ex.exeили редактор ed.
Некоторые видеоплаты иногда могут быть не в состоянии обеспечить вполне правильную работу в отдельных режимах SVGA, хотя при программном включении этого режима вы и получили величину i1, соответствующую успешному включению. Данную ошибку крайне трудно выявить без тестирования программы на конкретном оборудовании, так как стандартизация режимов SVGA и параметров новейших видеоплат далека от завершения.
Читать дальшеИнтервал:
Закладка: