do-while loop

< cpp‎ | language
Revision as of 19:03, 31 May 2013 by P12bot (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Executes a statement repeatedly, until the value of condition becomes false. The test takes place after each iteration.


[edit] Syntax

attr(optional) do statement while ( expression ) ;
attr(C++11) - any number of attributes
expression - any expression which is contextually convertible to bool. This expression is evaluated after each iteration, and if it yields false, the loop is exited.
statement - any statement, typically a compound statement, which is the body of the loop

[edit] Notes

statement is always executed at least once, even if expression always yields false. If it should not execute in this case, while or for loop may be used.

If the execution of the loop needs to be terminated at some point, break statement can be used as terminating statement.

If the execution of the loop needs to be continued at the end of the loop body, continue statement can be used as shortcut.

[edit] Keywords

do, while

[edit] Example

#include <iostream>
int main()
    int i = 0;
    do i++;
    while (i < 10);
    std::cout << i << '\n';
    i = 11;
    do i = i + 10;
    while (i < 10); // the condition is false before the loop
    std::cout << i << '\n';
    int j = 2;
    do {
        j += 2;
        std::cout << j << " ";
    } while (j < 9);


4 6 8 10