yohhoyの日記

技術的メモをしていきたい日記

名前付きループ in 標準C

プログラミング言語Cの次期標準C2yでは、名前付きループ(Named Loop)構文としてbreakcontinue文へのラベル指定がサポートされる。

// C2y
outer:
for (int i = 0; i < N; ++i) {
  for (int j = 0; j < M; ++j) {
    break;       // 内部ループ脱出: 1)へ
    break outer; // 外部ループ脱出: 2)へ  
  }
  // 1)
}
// 2)

同様の構文はJava*1, JavaScript*2, Rust*3, Go*4等でもサポートされている。

関連URL