Fonction et char* [ C ] - Programmation
Marsh Posté le 18-07-2002 à 01:30:23
Euh là y a une double erreur, je pense :
return saisie;
free(saisie);
* un return provoque le retour direct donc le free n'est jamais executé
* Il ne faut pas libérer la zone mémoire si tu la retournes, malheureux
* tu reserves l'espace dans la structure puis tu la reserves dans la fonction => c'est pas logique => tu fais 2 fois un free sur un pointeur d'où la fameuse "segmentation fault"
* aucune vérif sur la taille des chaines (mais ça tu comptes peut être l'ajouter plus tard) => "spabien"
(Je corrige de tête, j'ai pas de compilo sous la main)
Code :
|
Ok ?
Marsh Posté le 18-07-2002 à 01:50:49
Code :
|
Voila la nouvelle versionmais elle ne marche pas plus pour l'instant
CHaiCA
Marsh Posté le 18-07-2002 à 02:04:56
Si tu avais utilisé :
Code :
|
ça marcherait sans problème
(en plus c'est plus rapide : il y a 2 additions et une affectation en moins)
Marsh Posté le 18-07-2002 à 02:10:56
Nan c'est bon ca marche très ben ta première réponse était tip top, merci de m'avoir aidé à une heure si tardive et @ la prochaine question!
CHaiCA
Marsh Posté le 18-07-2002 à 08:20:31
Code :
|
tu oublie l'init du i c pour ca
Marsh Posté le 18-07-2002 à 01:03:26
Voila dans ce petit programme la saisie marche mais j'ai un segmentation fault ensuite. Ca doit être un truc à la ocn mais je ne le vois pas.
Si vous avez quelques instants...
Je fais une fonction parce qu'après je vais rendre la saisie plus restrictive.
CHaiCA