ラベル (プログラミング)
出典: フリー百科事典『ウィキペディア(Wikipedia)』
プログラミング言語において、ラベルとは特定の文を表すためにつけられる識別子である。
一般に、goto文によるジャンプや多重ループから一度に抜けるときといった、処理の移動先を指定する場合などに用いられる。古典的BASICでは、行番号自体がラベルになっている。Pascal、Cといった構造化言語では、「スパゲッティプログラム」の原因であるとしてgoto文の使用を避けるが、大域脱出などの目的で残されているため、ラベルもまた残されている。
Pascalでの例(Cでの例はgoto文参照)
procedure HogeHoge; label 666; {ラベルを宣言する} var done, flag : boolean; ... begin while ... do begin ... if ... then goto 666; {while文からの脱出} ... end; 666: done := done = flag; {これがラベルのついた文} ... end;
また、サブルーチンのエントリポイントを明示しない言語では、ラベルが事実上サブルーチンのエントリポイントを示すことがある。
古典的REXXでの例
/* An Example */ ... IF ... THEN SIGNAL fatalError ELSE CALL whatTodo ... whatTodo: /* ラベル */ ARG ... ... RETURN fatalError: /* ラベル */ SAY 'もう駄目。落ちます。' EXIT