Zireael пишет: Цитата: Увы не заработало.
Выкладывайте код, который не работает, тогда можно подсказать где ошибка.
CODE:
//Глобальные переменные, объявленные в блоке старт.
int ra; //Рандомная пауза
int ra200; //Рандомное число для некоторых циклов for
int ar_one[3];
int ar_two[2];
//Блок кода рандомно выбирающий группу функций для исполнения
int a;
int b;
int c;
a= rand(0,500);
b= rand(500,1000);
c= b-a;
if (c<750)
{
One();
Two();
}
else
{
Two();
One();
}
//Тела функций на которых выскакивает ошибка после исполнения кода выше
function One()
{
ra=rand(5000,7000);
pause(ra);
Mouse(2, #W_Kib, W_Kib.leftclient, W_Kib.topclient, 0, 512, 670, "Левую клик", 0);
int size_ar_one = sizearray(ar_one); // записать в переменную размер массива
int ar_one_i;
int random_num1;
int random_num2;
int temp;
// заполняем массивы числами 0,1,2...
ar_one_i=0;
while(ar_one_i<size_ar_one)
{
ar_one[ar_one_i] = ar_one_i;
ar_one_i=ar_one_i+1;
}
// перемешиваем массивы
ar_one_i=0;
while(ar_one_i<size_ar_one)
{
random_num1 = rand(0, size_ar_one);
random_num2 = rand(0, size_ar_one);
temp = ar_one[random_num1];
ar_one[random_num1] = ar_one[random_num2];
ar_one[random_num2] = temp;
ar_one_i = ar_one_i+1;
}
//Вызываем функции
ar_one_i=0;
while(ar_one_i<size_ar_one) // вызвать функции
{
if(ar_one[ar_one_i]==0) Tech();
if(ar_one[ar_one_i]==1) Help();
if(ar_one[ar_one_i]==2) AutoWar();
ar_one_i = ar_one_i+1;
}
goto KIB_Exit;
KIB_Exit:;
function Two()
{
int size_ar_two = sizearray(ar_two); // записать в переменную размер массива
int ar_two_i;
int random_num1;
int random_num2;
int temp;
// заполняем массивы числами 0,1,2...
ar_two_i=0;
while(ar_two_i<size_ar_two)
{
ar_two[ar_two_i] = ar_two_i;
ar_two_i=ar_two_i+1;
}
// перемешиваем массивы
ar_two_i=0;
while(ar_two_i<size_ar_two)
{
random_num1 = rand(0, size_ar_two);
random_num2 = rand(0, size_ar_two);
temp = ar_two[random_num1];
ar_two[random_num1] = ar_two[random_num2];
ar_two[random_num2] = temp;
ar_two_i = ar_two_i+1;
}
//Вызываем функции
ar_two_i=0;
nn();
while(ar_two_i<size_ar_two) // вызвать функции
{
if(ar_two[ar_two_i]==0) war();
if(ar_two[ar_two_i]==1) stone();
ar_two_i = ar_two_i+1
}
goto KIB_Exit;
KIB_Exit:;
}
Изначально Массивы объявлялись в теле функций вместе с их переменными.
Потом в блоке кода, затем в глобале. Некомпилированный проект работает во всех случаях
После компиляции в файл, его запуска, и выполнения блока кода (с условием) происходит ошибка. Меняя места объявления массива проверял как в запущеной среде так и в скомпилированном ехе файле.
Или нужен весь код? Он просто малочитаемый (т.к. в визуале сделан) могу проект скинуть.(Отредактировано автором: 27 Июля, 2021 - 03:56:42) |