Этот фрагмент
wstart = wend = start
использует тот факт, что в C присваивание является выражением, которое возвращает значение.В результате wend = start
присваивает значение start
wend
и «возвращает» его.Это «возвращаемое» значение присваивается wstart
.Таким образом, общий эффект заключается в назначении start
для wend
и wstart
.
Это стиль, который я видел раньше, но лично мне он не нравится.Я бы предпочел:
for (wstart = start, wend = start; wend < end; wend++)
, который делает то же самое, но в более ясной форме, ИМО.