(* Simulation des constructions break et continue de C avec des exceptions. L'idée est très simple : - la boucle est englobée par try ... with Break -> () et la construction break est traduite par raise Break - le corps de la boucle est englobé par try ... with Continue -> () et la construction continue est traduite par raise Continue *) exception Break exception Continue (* Ainsi le programme C donné en exemple devient *) let () = try for i = 0 to 9 do try if i = 3 then raise Continue; if i = 8 then raise Break; Printf.printf "%d" i with Continue -> () done with Break -> () (* et il affiche bien 0124567 *)
This document was generated using caml2html