Quelqu'un pourrais me dire ou est mon erreur ???? - C++ - Programmation
Marsh Posté le 26-08-2002 à 10:50:28
Lenoiche a écrit a écrit :
|
Code :
|
Marsh Posté le 26-08-2002 à 11:01:58
lol
j suis vraiment un boulet mais de toute façon pas reveiller
mais par contre ca marche tjrs po
Marsh Posté le 26-08-2002 à 11:03:54
Lenoiche a écrit a écrit : lol j suis vraiment un boulet mais de toute façon pas reveiller mais par contre ca marche tjrs po |
Qu'est ce que t'entend par "ca marche pas"?
Marsh Posté le 26-08-2002 à 11:05:52
et bien lors de la copilation tout est okay , mais qd je lance sous DOS ca merde
voila en gros ce que donne mon programme
Code :
|
Marsh Posté le 26-08-2002 à 11:28:54
Code :
|
Va falloir réviser un peu les pointeurs...
Marsh Posté le 26-08-2002 à 11:31:21
Harkonnen a écrit a écrit :
|
nan
Marsh Posté le 26-08-2002 à 11:31:27
Harkonnen a écrit a écrit :
|
le probleme n est pas la , car l ouverture se passe comme il faut
Marsh Posté le 26-08-2002 à 11:33:21
J'ai édité ma réponse précédente pour corriger main()...
Marsh Posté le 26-08-2002 à 11:35:51
Harkonnen a écrit a écrit :
|
non plus.
Voir phrase en gras
Marsh Posté le 26-08-2002 à 11:39:36
letoII a écrit a écrit : non plus. Voir phrase en gras |
Elle est ou mon erreur ?
Marsh Posté le 26-08-2002 à 11:42:48
Harkonnen a écrit a écrit : J'ai édité ma réponse précédente pour corriger main()... |
yeahhhhhhhhhh
je vois qu il n y a pas que moi ki ne s en sort pas avec els pointeurs !!!!
sinan j ai trouve mon erreur !!!!!
ecris(fichier1,fichier3)
le fichier 2 je l avais ouvert en lecture seulement
halalalal que des fautes d etourderies
en totu cas merci pour votre aide
Marsh Posté le 26-08-2002 à 11:44:00
Harkonnen a écrit a écrit : Elle est ou mon erreur ? |
Ben tu affecte le résultat de la fonction fopen à une vairble locale. Si tu veux que le résultat soit dispo en dehor tu doit passer l'adresse de la variable devant recevoir le résultat (donc un FILE ** ) à la fonction. Hors là t'as mis un FILE*. Donc tu modifie la valeur passée à la fonctino mais tu ne change pas la valeur de la variable en dehors de la focntion.
Marsh Posté le 26-08-2002 à 11:44:41
Lenoiche a écrit a écrit : yeahhhhhhhhhh je vois qu il n y a pas que moi ki ne s en sort pas avec els pointeurs !!!! sinan j ai trouve mon erreur !!!!! ecris(fichier1,fichier3) le fichier 2 je l avais ouvert en lecture seulement halalalal que des fautes d etourderies en totu cas merci pour votre aide |
De rien
Marsh Posté le 26-08-2002 à 11:49:41
letoII a écrit a écrit : Ben tu affecte le résultat de la fonction fopen à une vairble locale. Si tu veux que le résultat soit dispo en dehor tu doit passer l'adresse de la variable devant recevoir le résultat (donc un FILE ** ) à la fonction. Hors là t'as mis un FILE*. Donc tu modifie la valeur passée à la fonctino mais tu ne change pas la valeur de la variable en dehors de la focntion. |
Ah merde, effectivement, le résultat de fopen est stocké dans fichier ! J'étais persuadé d'avoir lu fichier1, qui est une globale !
Quelle idée de donner des noms aussi semblables à des variables...
Marsh Posté le 26-08-2002 à 11:50:41
Harkonnen a écrit a écrit : Ah merde, effectivement, le résultat de fopen est stocké dans fichier ! J'étais persuadé d'avoir lu fichier1, qui est une globale ! Quelle idée de donner des noms aussi semblables à des variables... |
HeHe
Marsh Posté le 26-08-2002 à 11:57:25
Y'a qd même un truc qui me chagrine :
fichier1 est un pointeur global vers un FILE, donc la mémoire est de toute façon réservée.
fichier1 est transmis en paramètre à la fonction ouverture :
Code :
|
cette zone de mémoire existe, donc la fonction ouverture suivante est correcte :
Code :
|
puisque l'argument fichier correspond à une zone mémoire allouée (fichier1)
corrigez moi si je me trompe, la reprise est dure
Marsh Posté le 26-08-2002 à 12:00:58
Harkonnen a écrit a écrit : Y'a qd même un truc qui me chagrine : fichier1 est un pointeur global vers un FILE, donc la mémoire est de toute façon réservée. fichier1 est transmis en paramètre à la fonction ouverture :
|
Ouai, mais vu que tu n'affecte pas directement fichiers1 dans ta fonction...
En fait tu as une variable locale qui a la même valeur que fichier1 et tu modifice cette variable, masi pas fichier1... tu vois le truc?
Marsh Posté le 26-08-2002 à 12:03:48
OK
Les joies du passage par référence ou par valeur... J'arrive encore à me faire avoir avec ça !
Marsh Posté le 26-08-2002 à 14:12:50
Harkonnen a écrit a écrit : OK Les joies du passage par référence ou par valeur... J'arrive encore à me faire avoir avec ça ! |
hehe, c clair que le passage par référence c super
Marsh Posté le 26-08-2002 à 10:43:05