do..while

PΩtla do..while zachowuje siΩ bardzo podobnie do pΩtli while, z wyj▒tkiem tego, ┐e warto╢µ wyra┐enia logicznego sprawdzana jest na ko±cu iteracji, a nie na pocz▒tku. Wynikaj▒c▒ z tego g│≤wn▒ r≤┐nic▒ jest to, ┐e pierwsza iteracja w pΩtli do..while na pewno zostanie wykonana (gdy┐ wyra┐enie logiczne bΩdzie sprawdzone dopiero na koniec iteracji). Natomiast w pΩtli while, gdzie wyra┐enie logiczne jest sprawdzane na pocz▒tku iteracji, mo┐e doj╢µ do sytuacji, ┐e pΩtla w og≤le nie zostanie wykonana, je╢li to wyra┐enie bΩdzie mia│o warto╢µ FALSE od pocz▒tku.

PΩtla do..while ma tylko jeden rodzaj sk│adni:

$i = 0;
do {
   print $i;
} while ($i>0);

Powy┐sza pΩtla zostanie wykonana tylko raz, gdy┐ po pierwszej iteracji, warto╢µ wyra┐enia logicznego wynosiµ bΩdzie FALSE ($i nie jest wiΩksze od 0) i pΩtla zostanie zako±czona.

Zaawansowani programi╢ci C s▒ zaznajomieni z innym wykorzystaniem pΩtli do..while, kt≤re s│u┐y do przerwania wykonywania bloku instrukcji w okre╢lonym momencie przez u┐ycie do..while(0) i instrukcji break. Demonstruje to poni┐szy kod:

do {
    if ($i < 5) {
        print "i jest za ma│e";
        break;
    }
    $i *= $factor;
    if ($i < $minimum_limit) {
        break;
    }
    print "i jest w porz▒dku";

     ...operacje na i...

} while(0);

Nie przejmuj siΩ, je╢li nie rozumiesz tego do ko±ca lub w og≤le. Mo┐esz tworzyµ skrypty, nawet zaawansowane skrypty bez u┐ycia tego "mechanizmu".