while (*dest++ = *src++); while (i != end && *i++ < 5);Он заслуженно считается антипаттерном -- если забыть точку с запятой, можно огрести. Кроме того, сама фраза звучит как-то неокончено. Альтернативные варианты этих циклов выглядят как то громоздко:
while (*dest = *src) { ++dest; ++src; } while (i != end) if (!(*i++ < 5)) break;Нашел альтернативу:
while (*dest++ = *src++) continue; while (i != end && *i++ < 5) continue;
И выглядит закончено (пока что-то делается, продолжать), и забытая точка с запятой приведет к синтаксической ошибке.
Комментариев нет:
Отправить комментарий