enum et tableau de structure
bonjour à tous :)
voila je m'exerce aux tableaux de structures et aux enum :)
voici déjà ce que j'ai fais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
#define ERREUR_DEBUT 1000
enum _config_error
{
ERREUR_DIVISION_ZERO = ERREUR_DEBUT, //erreur 1000
ERREUR_NOMBRE_ARGUMENTS, //erreur 1001
};
// Description des erreurs
struct _errordesc
{
int code;
char *message;
}
errordesc[] = {
{ ERREUR_DIVISION_ZERO, "Division par zero" },
{ ERREUR_NOMBRE_ARGUMENTS, "Nombre d'arguments incorrect" },
}; |
lorsque je l'utilise dans mon programme je procède de cette manière :
Code:
1 2 3 4
|
fprintf(stderr, "erreur %d : %s\n", errordesc[1].code, errordesc[1].message);
getchar();
exit(errordesc[1].code); |
jusque la pas de problème :)
Mais puis-je afficher le message lié au numéro de l'erreur (1001 par ex) sans connaitre le numéro du tableau ?
de cette manière :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
int func()
{
if(...)
{
return errordesc[1].code;
}
return 0;
}
int main()
{
int n;
n = func();
if(n != 0)
{
//afficher ici le message associé au numéro 1001 (sans connaitre la case du tableau)
}
} |
Merci à vous :)