[Langage C] Les structures ?
Résolu/Fermé
UNIX/VI/SHELL
Messages postés
87
Date d'inscription
mercredi 12 juillet 2006
Statut
Membre
Dernière intervention
8 avril 2009
-
28 mars 2007 à 15:22
UNIX/VI/SHELL Messages postés 87 Date d'inscription mercredi 12 juillet 2006 Statut Membre Dernière intervention 8 avril 2009 - 29 mars 2007 à 08:15
UNIX/VI/SHELL Messages postés 87 Date d'inscription mercredi 12 juillet 2006 Statut Membre Dernière intervention 8 avril 2009 - 29 mars 2007 à 08:15
A voir également:
- [Langage C] Les structures ?
- Langage ascii - Guide
- Langage binaire - Guide
- Pascal langage - Télécharger - Édition & Programmation
- Langage pascal - Télécharger - Édition & Programmation
- Dev-Pascal - Télécharger - Édition & Programmation
5 réponses
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
28 mars 2007 à 16:14
28 mars 2007 à 16:14
Il faut que la structure soit définie globalement et non à l'intérieur de main ou d'une procédure.
Stupeflip
Messages postés
391
Date d'inscription
jeudi 8 février 2007
Statut
Membre
Dernière intervention
4 décembre 2007
94
28 mars 2007 à 16:20
28 mars 2007 à 16:20
Salut,
Si ta structure correspond à la feuille du personnage (état, caracts, pv, etc), en théorie c'est un paramètre dans chaque fonction. Dans ce cas, un return de la structure est possible. Evidemment, ça limite un peu la possibilité de retour des fonctions si tu es obligé de faire comme ça, mais si tu ne veux pas utiliser de pointeurs, il faudra bien !
La méthode variable globale est tout à fait envisageable dans ton cas. Cependant essaye de ne pas en abuser, c'est vraiment pas propre, même si c'est très utile (un peu comme les goto). Dans ton programme, normalement il n'y a aucun risque que la structure soit appelée en concurrence, donc c'est une bonne idée ! Dans ce cas, inutile de mettre la structure dans le return.
Il reste la méthode assez moche de faire une structure contenant ta structure + d'autres flags évènements que tu utiliseras dans tes returns, mais vraiment c'est laid !
Si ta structure correspond à la feuille du personnage (état, caracts, pv, etc), en théorie c'est un paramètre dans chaque fonction. Dans ce cas, un return de la structure est possible. Evidemment, ça limite un peu la possibilité de retour des fonctions si tu es obligé de faire comme ça, mais si tu ne veux pas utiliser de pointeurs, il faudra bien !
La méthode variable globale est tout à fait envisageable dans ton cas. Cependant essaye de ne pas en abuser, c'est vraiment pas propre, même si c'est très utile (un peu comme les goto). Dans ton programme, normalement il n'y a aucun risque que la structure soit appelée en concurrence, donc c'est une bonne idée ! Dans ce cas, inutile de mettre la structure dans le return.
Il reste la méthode assez moche de faire une structure contenant ta structure + d'autres flags évènements que tu utiliseras dans tes returns, mais vraiment c'est laid !
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
28 mars 2007 à 17:46
28 mars 2007 à 17:46
Je déconseille vivement de passer en globale les structures, uniquement les squellettes.
Sinon encore, tu créé une structure que tu peux appeler 'Logger' par exemple, dont tu renseigne certains champ en cas d'erreur.
Cette structure, à la différence des autres serait globale (car commune et vue de toutes les parties de ton programme).
Ainsi par exemple, au retour d'une fonction, tu pourra récupérer ta structure dont un champ a été modifier par exemple, et en plus vérifié qu'il n'y a pas eu d'erreur, et si c'est le cas, récupérer le dernier message d'erreur.
Et dans tes fonctions, en cas d'erreur tu renseigne la structure logger.
Sinon encore, tu créé une structure que tu peux appeler 'Logger' par exemple, dont tu renseigne certains champ en cas d'erreur.
Cette structure, à la différence des autres serait globale (car commune et vue de toutes les parties de ton programme).
Ainsi par exemple, au retour d'une fonction, tu pourra récupérer ta structure dont un champ a été modifier par exemple, et en plus vérifié qu'il n'y a pas eu d'erreur, et si c'est le cas, récupérer le dernier message d'erreur.
Et dans tes fonctions, en cas d'erreur tu renseigne la structure logger.
UNIX/VI/SHELL
Messages postés
87
Date d'inscription
mercredi 12 juillet 2006
Statut
Membre
Dernière intervention
8 avril 2009
7
28 mars 2007 à 18:57
28 mars 2007 à 18:57
Re,
A quoi ressemblera la syntaxe ? Vous me pourriez me montrer avec un exemple de code en C svp ?
A quoi ressemblera la syntaxe ? Vous me pourriez me montrer avec un exemple de code en C svp ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
UNIX/VI/SHELL
Messages postés
87
Date d'inscription
mercredi 12 juillet 2006
Statut
Membre
Dernière intervention
8 avril 2009
7
29 mars 2007 à 08:15
29 mars 2007 à 08:15
Re,
c'est bon ca marche, j'ai donc utulisé des variables globales.
c'est bon ca marche, j'ai donc utulisé des variables globales.