Division Byzero (d_byzero) wrote,
Division Byzero
d_byzero

Программистское

(Не знающим C/C++ можно не читать)

Мне всегда казалось, что я умею правильно писать циклы for. Например так:

int i, first, last;
first = ...;
last = ...;
for (i = first; i <= last; i++)
{
...
}


Но оказывается, что я не нюхавший пороха щенок. Делать надо так (взято из исходника одной из
свободно распространяемых программ):

int i, first, last, count;
first = ...;
last = ...;
count = last - first + 1;
for (i = first; count; i++, count--)
{
...
}


Оно, конечно, такой цикл имеет одно важное преимущество. Он будет корректно работать, если last окажется равен максимальному целому. Но выглядит это спесифисски.
Subscribe

  • Вооружаю Волчка

    Купил в подарок себе (и Волчку) такую вот штуку на крышу. Формально для надувной лодки, но на самом деле для чего угодно. А Миша подарил…

  • Умеренно-экстремальный отдых

    Сразу говорю, фоток не будет. Кратко запишу, чтобы самому не забыть. В уже позапрошлую субботы ездили "на паровозе" с Мишей в Новгородскую область в…

  • + Nikon

    Решил я, наконец, подарить себе новую зеркалку понятно-какой-фирмы. Старая уже совсем старая во всех смыслах этого слова. Да, я знаю, что эпоха…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 8 comments