>>989
適当だけどこういうことでは?

{int rc=0; do{ ★始め
 処理1
 siwtch(x){
  case 0: rc=1; break; ★失敗した  ※siwtchから抜けるだけでwhileからは抜け出せていない
  case 1: break; ★成功だけど処理2は実行しない ※siwtchから抜けるだけでwhileからは抜け出せていない
  case 2: break; ★成功で処理2も行う
 }
 処理2
 break; ★成功した
 } while(0); if(rc) { ★
 異常時処理
}} ★終り