TRAITEMENT DE TABLEAU AVEC ALLOCATION & RESTITUTIONN DE MEMOIRE

cs_JCDjcd Messages postés 1138 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 25 janvier 2009 - 12 juin 2003 à 18:04
cs_kelsey Messages postés 35 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 11 décembre 2004 - 12 juin 2003 à 18:17
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/10895-traitement-de-tableau-avec-allocation-restitutionn-de-memoire

cs_kelsey Messages postés 35 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 11 décembre 2004
12 juin 2003 à 18:17
Oui coach!! je ferai de mon mieux!
;p
cs_JCDjcd Messages postés 1138 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 25 janvier 2009 4
12 juin 2003 à 18:16
Reponse au second message:
valeur est un 'float'
cs_JCDjcd Messages postés 1138 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 25 janvier 2009 4
12 juin 2003 à 18:14
- le teste du malloc ?
- le #include est initule
- au lieur de faire " *(Pt_tableau+L_position)= L_valeur; " tu devrait plutot faire : "Pt_tableau[L_position] ) L_valeur;"
- "malloc((L_Nb_max*4))" n'est pas bien, car si tu vas sur un ancien ordinateur 16 bits il ne faut pas faire "*4" mais "*2" !
Donc fais plutot "malloc((L_Nb_max*sizeof(long)))" (portabilite valable sue tout les ordinateurs)
- Pour la onction 'Lire' fais directement
'return *(Pt_tableau+(L_position));' , c'est plus direct
- Dans 'Affichage' tu initialises 2 fois 'indice' !
- tu testes "position>Nb_max", et si je tape -10 !!!
tu devrais faire : "position>Nb_max && position <= 0"
- Pourquoi faire des globales !! Il faut eviter de toujours mettre des globales ... (des fois c'est neccessaire)
cs_kelsey Messages postés 35 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 11 décembre 2004
12 juin 2003 à 18:13
ben non puisque valeur est un int et que *(Pt_tableau+L_position) est un pointeur sur entier, ce pointeur renvoit un entier!!
cs_JCDjcd Messages postés 1138 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 25 janvier 2009 4
12 juin 2003 à 18:04
ATTENTION :
" *(Pt_tableau+L_position)= L_valeur; "
- les types sont differents !
Rejoignez-nous