Comment reutiliser des variables dans d'autre fonction?? - C - Programmation
Marsh Posté le 02-04-2005 à 16:41:39
ares9907 a écrit : Pointeur? non, ça fonctionne pas! |
si si ça fonctionne,
montres nous un exemple qui ne fonctionne pas.
Marsh Posté le 02-04-2005 à 16:48:15
tu peux éditer et mettre ton code avec les balises [*cpp] ton code [*/cpp] (retirer les étoiles) stp.
Marsh Posté le 02-04-2005 à 16:49:06
Code :
|
Voila, couleur pour les commentaires, pr eclaircir!
Oui, le controle de saisie est COMPLIQUé!!!!! mais, arrivais pas a faire autrement !
Marsh Posté le 02-04-2005 à 16:51:47
push a écrit : tu peux éditer et mettre ton code avec les balises [*cpp] ton code [*/cpp] (retirer les étoiles) stp. |
Marsh Posté le 02-04-2005 à 17:04:12
Heu pas tro compris...
Je peux envoyer le workspace, ça serait plus simple, tu verrais toutes les autres fonctions, et dans lesquelles que je veux utiliser les var...?
Par msn ?
ares9907@hotmail.com
Marsh Posté le 02-04-2005 à 17:09:45
j'ai pas vraiment envie de me tapper ton code enfait, en méditant sur ce bête exemple tu pourras arriver à tes fins je pensse.
Code :
|
Marsh Posté le 02-04-2005 à 17:12:52
ReplyMarsh Posté le 02-04-2005 à 17:19:18
Hm, 'vois pas trop le dérouelement en fait !
Oauis, un peu boulet !
Code :
|
Marsh Posté le 02-04-2005 à 17:20:54
Mais, là, je ne retourne qu'une seul variable.....
Et si je veux réutiliser plusieurs variable saisie ds une fontion, F1 et réutiliser c'est variable ds F2 F3 F4...
Marsh Posté le 02-04-2005 à 17:32:25
Deather2> chut
ares9907> pour la première partie oui je déclare et définis la fonction toto.
pour le void ça change rien, et si t'as plusieurs variables bein tu passes l'adresse de ces variables c'est tout.
Code :
|
Marsh Posté le 02-04-2005 à 17:37:29
Hm, ben, dans mon programme precedent, c'est ce que j'ai fias....sans utiliser de pointeur meme...
Marsh Posté le 02-04-2005 à 17:45:33
le but c'était de te passer de tes return non ? tu passais les valeurs des variables en paramètre, ici jte montre comment passer les adresses de tes variables pour pouvoir les manipuler dans d'autres fonctions.
Marsh Posté le 02-04-2005 à 17:55:05
Le programme plus haut :
Il y a plusieur fonction qui saisissent chacune une valeur, la valeur est affecté de la façon suivante : ligne 236 a 241,
qui renvoi a une fonction qui demande a lutilisateur la saisie de la vlaeur
Ap, ligne 242, je lance une fonction qui va reaficher toute les valeurs saisie, et faire un controle dessus (interval a respecté etc...)
Et mon progrmme gneral se deroule comme suit :
Menu principal : lutilisateur, peut soit, saisir des parametres, soit afficher l'etat de ces parametres
Logiquement, s'il appuie sur 2 (qui doit afficher l'etat des par) il doi s'afficher des valeur aleatoir, si mes varibale ne sont pas au prealable initialiser...
Ou, normalement, en appuyant sur un, ça va lancer le programme ci dessus, les variable von donc toute contenir une vlauer!
Et lorsque lutilisateur reviendra au menu principal et kl apuyra sur 2, ça devrai afficher ces valeurs saisie! et bien non!
Je me resser de la fonction "recap_valeur(v_min,v_rapp1,v_rapp2,v_rapp3,v_max);" (ligne 242) ms en fait il considere qu'elle sont pas correcte et lance le deroulemen de la lgine 138!(En gros, il redemande a lutilisateur la saisie....alors qu'il la deja fait, et qu'elle on deja été controlé JUSTE!)
Or il ne devrai pas le faire!!! Puisqu'elle on été verifé juste avant ....
Voila...si je suis plus clair??
En meme temps j'y suis depuis 10h ce matin sur mon truc! Et je suis pas top en info !!
Marsh Posté le 02-04-2005 à 18:15:42
ça m'a l'air bien tordu tout ça
tu dois avoir un problème au niveau de la portée de tes variables.
quand tu appuyes sur ton 2 y va les chercher où les valeurs ?
tu devrais lire ça aussi http://mapage.noos.fr/emdel/notes.htm#saisie
et peut-être réorganiser ton prog.
Marsh Posté le 02-04-2005 à 18:22:03
Ben en appuyant sur 2 ça relance la fonction "recap_valeur", et normalement, cette fonction controle l'etat des valeurs, hors, si elle sont bonnes, elles doit les afficher, et demander une nouvelle saisie ds le cas contraire...
Mais, en appuyant sur 2 : Soit lutilisateur a deja programmer, et la ça devrai réafficher les valeurs, soit lancer la demande de nouvel saisie (cas ou cest en erreur, puis qu'il na encore rien entré!) mais ds tt les cas ça demande la nouvel saisie...
Marsh Posté le 02-04-2005 à 18:39:59
Est-ce que dans toto je pourrais demander a lutilisateur dentrer de saisir plusieur valeur, les controlers!
Puis dans une autre fonction, rapeler toto(), ça me donera tte les vlaeur saisir et controlé?
Et je pourai utiliser toto() ds nimporte kel fonction???
(si oui, merci, et j'ai plus ka retaper mes 200 ligne de prog deja 3fois ke jefface et retape 200 ligne )
Marsh Posté le 02-04-2005 à 18:59:42
Code :
|
Code :
|
Voila ce que je viens de tapper, truc tout simple!
En gros, j'ai une menu principal qui si on appui sur 1 menvoie dans la fonction saisie!
Et si j'appui sur 2, menvoie ds la fonction recap_valeur2!
En appuyant sur 1, ça marche, ça saisie les vlaeurs!
Mais je voudrais qu'en appuyant sur 2 ça m'affiche les valeur saisie, or ça me relance "saisie" et me redemande une nouvelle saisie de vlauer....en gros appuyer sur 1 ou 2 reviens au meme ds ce petit bout de prog!
Tu peux m'eclairer?
J'ai l'impprecion d'approcher du but !!
PS: tout en au, c'est mon menu principal, et aussi ma fonction principal, tout ce qui est en VERT, n'est pas utiliser, pour linstant jessai de voir si ça marche,....
Marsh Posté le 02-04-2005 à 19:00:45
Non, le mieux est de créer une fonction pour l'acquisition et le controle, et une autre, toto par exemple pour le traitement.
Marsh Posté le 02-04-2005 à 19:03:52
Oui !! C'est ce que je veux faire !
Et ça la haut ça marche????
(beaucoup de ligne mais tres simple, oser le lire SVP )
Marsh Posté le 02-04-2005 à 19:08:14
Enfin, non j'ai compris!
Bref, alors, comment puis je créer une fonction, qui va saisir et verifier des valeur, puis une autre qui va afficher ces valeurs saisie et controlées ???
Ca le progs précédent renvoie deux fois a la mm fonction (saisie)
Moi, je veux qu'en suite, ma fonction recap_valeur, maffiche les valeurs tapées dans saisie....
Marsh Posté le 02-04-2005 à 19:20:00
ares9907 a écrit : Dans une fonction, je demande a l'utilisateur d'entrer plusieur valeurs, que je stocke dans differentes variables! Ex: a,b,c! |
Bien sûr que ça fonctionne (si le code est correct), mais si il y a plusieurs valeurs, il faut soit plusieurs pointeurs (lourd) soit un pointeur sur une structure...
(et essaye d'écrire en français lisible, ça aide à se faire comprendre...)
Marsh Posté le 02-04-2005 à 19:24:34
Heu, j'ai un niveau debutant en prog!
Ouais, dsl, je sais pour les fautes !
Marsh Posté le 02-04-2005 à 19:31:30
deather2 a écrit : Utilise des variables globales |
Certainement le plus mauvais avis lu ici. A oublier.
Marsh Posté le 02-04-2005 à 19:32:25
ares9907 a écrit : Hm, ben, dans mon programme precedent, c'est ce que j'ai fias....sans utiliser de pointeur meme... |
Sans pointeurs ? Ben ça doit expliquer pourquoi ça ne marche pas!
Marsh Posté le 02-04-2005 à 19:42:26
Et ça ? pk marche pas?
Code :
|
Code :
|
Marsh Posté le 02-04-2005 à 19:43:19
Emmanuel Delahaye a écrit : Certainement le plus mauvais avis lu ici. A oublier. |
Y'en a eut d'autres ?
Tant que tu es là, on voit dans son prog plusieurs appels à main(), j'ai jamais vu ça et j'ai même jamais pensser à le faire, ça se fait ce genre de chose ?
Marsh Posté le 02-04-2005 à 21:13:13
ares9907 a écrit : Et ça ? pk marche pas? |
Parce que visiblement tu ne comprends pas ce qu'est un pointeur? Au lieu d'essayer de deviner, tu devrais plutot lire un bouquin de C
Marsh Posté le 03-04-2005 à 00:37:40
push a écrit : Y'en a eut d'autres ? |
C'est pas recommandé (interdit en C++)
Marsh Posté le 03-04-2005 à 11:04:44
ares9907 a écrit : comment revenir a ma fonction main alors? |
C'est de l'algorithmie de base...
Le menu est une boucle avec :
quand l'action est terminée, la boucle relance l'affichage et suspend l'exécution (saisie).
Marsh Posté le 02-04-2005 à 16:36:31
Voila
Dans une fonction, je demande a lutilisateur d'entrer plusieur valeurs, que je stock dans differente variabeles! Ex: a,b,c!
Comment puis-je réutiliser ce que l'utilisateur a saisie dans une autre fonction ???
Pointeur? non, ça fonctionne pas!
J'ai réucis une fois, en créan une fonction pr la demande de chaque variable (une fonction pr a, pr b et pour c!) Et je fais un return!
Mais, c'est trop long! Et me permet pas d'utiliser les variables a b et c ds nimporte quelle autre fonction!
Comment puis-je faire??
Merci