Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Recuperation de toutes les erreurs d'execution.

12 réponses
Avatar
Ben
Voila, je cherche a creer un programme capable de capturer toutes les
erreurs possibles d'execution (division par 0, mauvais pointeur, ...) et
d'afficher un message detaillant precisement l'erreur.

pour cela j'ai pense a quelque chose comme ca :
try{
instructions;
}
catch(...)
{
printf("Erreur\n");
}

J'arrive belle et bien a capturer toutes les erreurs grace au catch(...)
mais l'ennuie est que je n'ai aucun moyen de savoir ce qui s'est passe et
d'afficher un message plus detaille que "Erreur". J'aimerai avoir une
description de l'erreur mais comment cela est possible?
Merci.

2 réponses

1 2
Avatar
Arnaud Debaene
Frédéri MIAILLE wrote:
Car je suppose que la division par 0 doit générer une exception en
bonne et dûe forme.


Non, pas d'après la norme (c'est un UB), et je ne connais pas de plate-forme
qui permette directement de gérer les divisions par 0 sous forme
d'exceptions C++.

Arnaud

Avatar
Arnaud Debaene
Vincent Richard wrote:

<HS>
Il y a quelque chose qui y ressemble assez (avec des mots-clés non
standards) sous Windows avec Visual C++ : voir mon précédent message
concernant le SEH (Structured Exception Handling).


Oui, mais ce ne sont pas des exceptions C++ et n'ont pas exactement la même
sémantique. Voir aussi _set_se_translator pour les "fusionner" avec les
exceptions C++.
</HS>


Arnaud

1 2