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
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 8 comments