Break: Difference between revisions

From EDukeWiki
Jump to navigation Jump to search
Document CON's weird 'break' behavior inside 'while' loops.
m tweak last explanation
Line 10: Line 10:
         userquote 500
         userquote 500
         break  // while is inner: "continue"
         break  // while is inner: "continue"
        userquote 400
     }
     }


makes quote 500 be displayed ''three'' times in total.
makes quote 500 be displayed ''three'' times in total and quote 400 not a single time.


[[Category:Duke3D 1.3/1.5 commands]]
[[Category:Duke3D 1.3/1.5 commands]]

Revision as of 12:20, 21 April 2014

A single break command can be used to stop code after the break from executing. Can also be used to exit a state early. Also used inside switch blocks to close case statements.

Inside while loops, a break transfers control to the beginning of the loop where the condition for continuing the iteration is checked. This is in contrast to most imperative programming languages, where a break inside a loop transfers control to just after the end of the loop body (thus "breaking" it). For example, in CON, the snippet

   setvar j 0
   whilevarn j 3
   {
       addvar j 1
       userquote 500
       break  // while is inner: "continue"
       userquote 400
   }

makes quote 500 be displayed three times in total and quote 400 not a single time.