Bonjour,
J'ai un ensemble de variables que j'utilise dans plusieurs fonctions, est ce que je dois passer toutes ses variables en paramètre dans chaque fonction ou y a t-il un moyen plus simple pour ça?
Bonjour,
J'ai un ensemble de variables que j'utilise dans plusieurs fonctions, est ce que je dois passer toutes ses variables en paramètre dans chaque fonction ou y a t-il un moyen plus simple pour ça?
tu as un exemple d'utilisation
Tu peux regrouper les variables qui ont un lien entre elles sous la forme d'une ou des structure(s).
Thierry
"The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
"If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow
FAQ-Python FAQ-C FAQ-C++
+
Soit tu les déclares en global et chaque fonction pourra y accéder et les modifier.
Soit tu les passes en paramètre par référence à chaque fonction
4 paramètres dans une fonction c'est pas énorme.
Sinon tu peux créer une structure qui contienne ces paramètres, et la passer a ta fonction, comme te le conseillais Thierry Chappuis
Et oui tu la passe par référence ensuite.
tu peux faire une structure de base qui ressemble à cela
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 typedef struct { double t; int q; struct Liste * ptete; int * pentiers; void (*debut)(void); void (*traitement)(void); void (*quitter)(void); }Liste;
beh j'essai de regrouper les données et les fonctions des variables en question, ce n'est pas forcément une liste que tu peux l'appeller struct regroupe_var (il faut regarder aussi les prototypes des fonctions)
Très mauvais conseil...
Pas du C.
On ne passe que des valeurs en C. Cette valeur peut être une adresse. Le paramètre est alors un pointeur, bien sûr...
Aucun intérêt en C, sauf si on veut simuler les fonctions virtuelles du C++ (Par exemple : sorties définies à l'exécution). Mais je doute que ce sois le cas dans un problème aussi simple. Tu embrouilles le P.O.
Partager