TABLEAU DE TAILLE VARIABLE EN UTILISANT LES POINTEURS

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 28 déc. 2005 à 19:03
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 28 déc. 2005 à 19:03
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/35307-tableau-de-taille-variable-en-utilisant-les-pointeurs

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
28 déc. 2005 à 19:03
int *x;
int t;

x=&t; // x va pointer sur t, ok

x=new int[2]; // x pointera vers un nouveau tableau

if (t==NULL) // t n'a JAMAIS été initialisé et n'est pas un pointeur et ne permet pas de tester
l'allocation.

un truc du genre int** t = &x;
et if(*t == NULL) serait ok
t serait un pointeur vers x
*t donnerait la valeur actuelle de x
x étant également un pointeur

x=new int[nbcases];
for(i=0;i<=nbcases;i++) // la boucle va trop une case loin, écrasement mémoire.

Il manque la libération mémoire finale.


Conclusion : beaucoup d'erreurs sur un petit code, pas sûr que cela aide beaucoup de monde...
Rejoignez-nous