![]() |
VOOZH | about |
In C, C++, and Java, both for loop and while loop is used to repetitively execute a set of statements a specific number of times. However, there are differences in their declaration and control flow. Let's understand the basic differences between a for loop and a while loop.
A for loop provides a concise way of writing the loop structure. Unlike a while loop, a for loop declaration consumes the initialization, condition, and increment/decrement in one line thereby providing a shorter, easy-to-debug structure of looping.
for (initialization condition; testing condition; increment/decrement)
{
// statement(s)
}GFG GFG GFG GFG GFG
Output
GFG
GFG
GFG
...
...
...
{truncated}A while loop is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition. The while loop can be thought of as a repeating if statement.
while (boolean condition)
{
// loop statements...
}GFG GFG GFG GFG GFG
Output
GFG
GFG
GFG
...
...
...
{truncated}The major differences between for loop and while loop in C, C++ and Java are as follows:
for Loop | while Loop |
|---|---|
| Initialization may be either in the loop statement or outside the loop. | Initialization is always outside the loop. |
| Once the statement(s) is executed then increment is done. | The increment can be done before or after the execution of the statement(s). |
| It is normally used when the number of iterations is known. | It is normally used when the number of iterations is unknown. |
| Condition is a relational expression. | The condition may be an expression or non-zero value. |
| It is used when initialization and updation of conditions are simple. | It is used for complex initialization. |
| For loop is entry controlled loop. | While loop is also entry controlled loop. |
| Syntax: for ( init ; condition ; iteration ) { statement(s); } | Syntax: while ( condition ) { statement(s); } |
| The for loop is used when the number of iterations is known. | The while loop is used when the number of iterations is unknown. |