Oh oui ! Le goto est bcp utilisé en C en tant que gestion d'exception. J'ai la flemme de taper un exemple mais en gros tu mets à la fin de ta fonction tous les close() et autre free(), avec un label 'cleanup' par exemple. En cas de merdouille dans ta fonction, un goto cleanup et tu évites ainsi un bon paquet d'imbrications de if().
Au final tu as un code très facile à lire/comprendre donc maintenir.
[^] # Re: goto return cave
Posté par gUI (Mastodon) . En réponse au journal Is return the new goto ?. Évalué à 8. Dernière modification le 27 janvier 2024 à 08:42.
Oh oui ! Le goto est bcp utilisé en C en tant que gestion d'exception. J'ai la flemme de taper un exemple mais en gros tu mets à la fin de ta fonction tous les close() et autre free(), avec un label 'cleanup' par exemple. En cas de merdouille dans ta fonction, un goto cleanup et tu évites ainsi un bon paquet d'imbrications de if().
Au final tu as un code très facile à lire/comprendre donc maintenir.
EDIT : un bel exemple est dans le coding style du kernel
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.