È considerata una forma decente scrivere un codice come questo:
int done = 0;
for (x = 0; !done; x++) {
... something involving 'x', that might end early ...
if (!(x < max))
done = 1;
}
al contrario di dover utilizzare un ciclo while
:
int done;
x = 0;
while (!done) {
... something involving 'x', that might end early ...
if (!(x < max))
done = 1;
x++;
}
o dover break
di un ciclo for
:
for (x = 0; x < max; x++) {
int done;
... something involving 'x', that might end early ...
if (done)
break;
}
Preferisco il primo, principalmente perché non mi piace break
di out di loop, preferisco for
loops e sembra ancora pulito. Il secondo mi sembra quello che gli altri probabilmente utilizzerebbero.
Il terzo mi sembra icky, ma sembrava qualcosa d'altro che altri potrebbero usare in opposizione al primo.
Quali sono i vantaggi dell'utilizzo di uno sull'altro? Dovrebbero essere usati ciascuno in momenti diversi, è generalmente corretto, o si tratta solo di preferenze personali?