A goto statement causes your program to unconditionally transfer control to the statement associated with the label specified on the goto statement.
![]()
Because the goto statement can interfere with the normal sequence of processing, it makes a program more difficult to read and maintain. Often, a break statement, a continue statement, or a function call can eliminate the need for a goto statement.
If you use a goto statement to transfer control to a statement inside of a loop or block, initializations of automatic storage for the loop do not take place and the result is undefined. The label must appear in the same function as the goto.
![]()
break Statement
continue Statement