Go forward to Next Statement.
Go backward to Break Statement.
Go up to Statements.

The `continue' Statement
========================

   The `continue' statement, like `break', is used only inside `for',
`while', and `do'-`while' loops.  It skips over the rest of the loop
body, causing the next cycle around the loop to begin immediately.
Contrast this with `break', which jumps out of the loop altogether.
Here is an example:

     # print names that don't contain the string "ignore"
     
     # first, save the text of each line
     { names[NR] = $0 }
     
     # print what we're interested in
     END {
        for (x in names) {
            if (names[x] ~ /ignore/)
                continue
            print names[x]
        }
     }

   If one of the input records contains the string `ignore', this
example skips the print statement for that record, and continues back to
the first statement in the loop.

   This is not a practical example of `continue', since it would be
just as easy to write the loop like this:

     for (x in names)
       if (names[x] !~ /ignore/)
         print names[x]

   The `continue' statement in a `for' loop directs `awk' to skip the
rest of the body of the loop, and resume execution with the
increment-expression of the `for' statement.  The following program
illustrates this fact:

     awk 'BEGIN {
          for (x = 0; x <= 20; x++) {
              if (x == 5)
                  continue
              printf ("%d ", x)
          }
          print ""
     }'

This program prints all the numbers from 0 to 20, except for 5, for
which the `printf' is skipped.  Since the increment `x++' is not
skipped, `x' does not remain stuck at 5.  Contrast the `for' loop above
with the `while' loop:

     awk 'BEGIN {
          x = 0
          while (x <= 20) {
              if (x == 5)
                  continue
              printf ("%d ", x)
              x++
          }
          print ""
     }'

This program loops forever once `x' gets to 5.

   As described above, the `continue' statement has no meaning when
used outside the body of a loop.  However, although it was never
documented, historical implementations of `awk' have treated the
`continue' statement outside of a loop as if it were a `next' statement
(see The `next' Statement: Next Statement.).  By default, `gawk'
silently supports this usage.  However, if `-W posix' has been
specified on the command line (see Invoking `awk': Command Line.), it
will be treated as an error, since the POSIX standard specifies that
`continue' should only be used inside the body of a loop.