Кибор » Кибор - Интегрированная среда разработки ботов » О программе Кибор » Версия 5.36 Добавление оператора break

Страниц (1): [1]
 

1. Kibor - 12 Июля, 2018 - 06:39:19 - перейти к сообщению
Добавлен оператор break
Его назначение прерывать циклы loop, looptime, while и for

Оператор break прерывает цикл в теле которого он находится, передавая управление на строку находящуюся непосредственно после прерванного цикла.

Примеры и пояснения
Применение break в
CODE:
loop()
{
break;
}

равносильно
CODE:
loop()
{
goto a;
}
a:;


Применение break в
CODE:

while(1==1)
{
break;
loop()
{
break;
}
}

равносильно
CODE:

while(1==1)
{
goto b;
loop()
{
goto a;
}
a:;
}
b:;


Применение break в
CODE:

for (int n=0; n<5; n++)
{
while(1==1)
{
break;
loop()
{
break;
}
}
if (n==2) break;
}

равносильно
CODE:

for (int n=0; n<5; n++)
{
while(1==1)
{
goto b;
loop()
{
goto a;
}
a:;
}
b:;
if (n==2) goto c;
}
c:;
2. Dantes3000 - 12 Июля, 2018 - 12:44:46 - перейти к сообщению
Превосходно
3. AdryV - 13 Июля, 2018 - 07:11:43 - перейти к сообщению
Kibor , эммм тут вы написали что-то насчет конструкции цикла и скорости... меня интересует: это относится к самой логике цикла который в примере или к оператору break?...
4. Kibor - 13 Июля, 2018 - 08:02:00 - перейти к сообщению
AdryV , ну лишняя проверка равенства в while которая берет на себя одну функцию сделать замкнутый цикл не рационально.
В кибор для этого есть loop, который по производительности равен

CODE:

a:

goto a;


а while
CODE:

a: if (1==1)
{


goto a;
}


break сам по себе быстрый, это goto
5. Skycrew - 14 Июля, 2018 - 05:02:25 - перейти к сообщению
Полезно

Powered by ExBB FM 1.0 Final