Как создать свой сайт

создание функций

Скачать Кибор

О программе Кибор

Описание языка Кибор
Переменные

Операции с переменными
Логика и переходы
Указатели
Функции

Список функций
Индификация окон и контролов

Управление окнами

Клавиатура

Мышь
Контролы
Работа с изображением
Сканирование экрана и поиск изображений
Поиск 3Д моделей в играх
Определение цвета пикселя
Система
Вывод сообщений
Вспомогательные

Интерфейс программы
Текстовый редактор

Контролы управления

Визуальные инструменты Кибор

Шпион получающий информацию о окнах, контролах, координатах мыши и цвете экрана

Сканер графического интерфейса

Демонстрационные примеры
Бот для игры в пасьянс Косынка
Бот для Warspear Online

Список демонстрационных примеров...

Функции.

  Функция, это подпрограмма, принимающая или не принимающая параметры, вызываемая сколько угодно раз и с какого угодно участка кода, выполняющая свой участок кода и по завершению возвращающая или не возвращающая результат и управление вызвавшей ее строке.

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

Синтаксис:
Каждая новая функция должна иметь свое уникальное имя.
Оператор return служит для выхода из функции и возврата в следующую строку от ее вызвавшей. Если return отсутствует функция выполняется до закрывающей фигурной скобки и управление возвращается в следующую строку от ее вызвавшей.
Если после оператора return находится возвращаемое значение, функция завершается и возвращается управление в строку ее вызвавшеую и она заново выполняется, только вместо вызова функции находится возвращаемое ей выражение стоящее после return.
Пример создания простейшей функции:
К примеру есть код:
int a=5, b=10, c=20;
int a1=6, b1=11, c1=21;
//нам необходимо произвести математические операции типа:
a=a+b+c; и a1=a1+b1+c1;
//реализуем это с помощью функции. создаем функцию с именем summa принимающую в виде параметров значения переменных с которыми необходимо произвести операции сложения и возвращающую результат.
function summa(int q, int w, int e)
{
return q+w+e;
}
//вызываем эту функцию в программе для a=a+b+c;
a=summa(a, b, c);
//вызываем эту функцию в программе для a1=a1+b1+c1;
a1=summa(a1, b1, c1);
Объявленные в параметрах и теле функций переменные видны только в этой функции и могут иметь одинаковые имена в разных функциях.
Это же относится и к команде перехода goto и их меткам.

Приведенный выше пример работает в такой простой ситуации. Но что делать если нам надо в функции произвести такую же операцию с масивами? Можно конечно сделать так:
int a[100], b=10, c=20;

int n=0;
naz: if (n<100)
{
a[n]=summa(b, c);
n++;
goto naz;
}

function summa(int q, int w)
{
return q+w;
}
Но гораздо лучше не вызывать функцию 100 раз, а передать ей указатель на масив и за раз все сделать (Про указатели можно почитать в статье Указатели):
int a[100], b=10, c=20;

summa(#a[0], b, c);

function summa(int #e, int q, int w)
{
int n=0;
naz: if (n<100)
{
e[n]=q+w;
n++;
goto naz;
}
}

В вышеприведенных примерах можно было вообще не передавать в параметрах переменные b и c, так как они объявлены в основном теле программы и видны в любом месте кода и в функции можно было их использовать напрямую.