\b;Массивы Массив - это в основном набор переменных того же типа и класса. Вы можете использовать н-ное количество массивов в языке CBOT, однако максимальный размер массива равен 9999 элементов. Вы должны использовать квадратные скобки \c;[]\n; после того, как объявили массив. \c; \s;int [ ] a; // целочисленный массив \s;int a [12]; // целочисленный массив, где максимум 12 элементов \s;string s[3]; // массив с тремя строчками \s;float xy[][]; // двумерный массив плавающей запятой \n; На самом деле, когда компилятор CBOT встречает объявление массива, то он просто создает \c;\l;null\u cbot\null;\n; \l;ссылку\u cbot\pointer;: \c; \s;int a[5]; // просто пустая ссылка \n; Как только вы поместите значения в массив, элементы создаются и ссылки инициализируются: \c; \s;a[2] = 213; // указывает на \s; // три элемента [0], [1] и [2] \n; После этой операции, \c;a\n; содержит ссылки на элементы массива. Элементы \c;[0]\n; и \c;[1]\n; созданы, однако не инициализированы, т.к. они пусты. Инструкция \c;\l;sizeof\u cbot\sizeof;\n; позволяет получить число элементов, хранящихся в массиве. Если массив объявлен с максимальным размером, то программа остановится, как только доступ к нему выйдет за его рамки(т.е. кол-во элементов+N). При компиляции ошибки не возникнет, даже если она очевидна: \c; \s;{ \s; int a[5]; \s; a[7] = 123; // нет ошибки при компиляции \s; // однако ошибка при выполнении \s;} \n; Если вы передаете \l;функции\u cbot\function; массив в качестве параметра, то функция получает только \l;ссылку\u cbot\pointer; на массив. Это означает, что если вы измение элемент в массиве, то этот элемент будет измененным и в самой функции. \t;См. также \l;Язык CBOT\u cbot; и \l;Переменные\u cbot\type; и \l;категории\u cbot\category;.