Просмотр полной версии : [Вопрос] Проверка в конце выполнения цикла
Мне нужно сделать обнуление, когда цикл проверит всех игроков, можно пример кода? :)
for (/* ... */)
{
/* ... */
}
/*
Обнуление.
*/
У меня таким образом не успевает всё проверится и обнуление быстрее чем проверка всех игроков.
Иван Бубнов
05.02.2016, 18:16
for(new i; i < MAX_PLAYERS; ++i)
{
if(i == MAX_PLAYERS-1)
{
//действие
}
}
Но этот вариант не рекомендую использовать.
Можно, конечно, использовать goto.
for (/* ... */)
{
/* ... */
goto scratch;
}
scratch:
/* ... Обнуление ... */
так же есть вероятность, что вы используете функции, которые, соответственно, обнуляют переменные.
Я использую так:
foreach(player,i)
{
if(a[i] == b)
{
//Действие
}
b = 0;
}
Очень простая ошибка. При каждой итерации обнуляете переменную, но, вероятно, не устанавливаете её в самом цикле.
$continue$
06.02.2016, 00:43
Можно, конечно, использовать goto.
for (/* ... */)
{
/* ... */
goto scratch;
}
scratch:
/* ... Обнуление ... */
так же есть вероятность, что вы используете функции, которые, соответственно, обнуляют переменные.
Спагетти код. (http://habrahabr.ru/post/187154/)
Почти в 95% можно обойтись без goto
Desulaid
06.02.2016, 01:03
Спагетти код. (http://habrahabr.ru/post/187154/)
Почти в 95% можно обойтись без goto
Почему бы тогда не предложить свой вариант, а не тупо критиковать другой? (OнO")
А зачем обнулять?
for(new i; i < 228; i++)
{
/* на лабутенах ... */
}
Переменная i создастся и будет только существовать в теле цикла. Цикл отработал, считай переменной нет.
Спагетти код. (http://habrahabr.ru/post/187154/)
Почти в 95% можно обойтись без goto
Я давно знаю об этом, но хорошо, что напомнили мне).
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot