Aide sur un programme C++
Résolu
jihane jihane
Messages postés
65
Date d'inscription
Statut
Membre
Dernière intervention
-
jihane jihane Messages postés 65 Date d'inscription Statut Membre Dernière intervention -
jihane jihane Messages postés 65 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Aide sur un programme C++
- Programme demarrage windows - Guide
- Mettre en veille un programme - Guide
- Desinstaller un programme sur windows - Guide
- Forcer la fermeture d'un programme - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
5 réponses
matiers=new char*[nb*sizeof (char*)];*********************
cette ligne crée un tableau de chaine de caractère, de taille nb.
une chaine de caractère est un char *, un char*[] est un tableau de chaine
j'ai quand même l'impression qu'il y a une "erreur" bénigne : il faudrait juste nb dans les crochets pour créer un tableau avec nb éléments, pas besoin du nb * sizeof(char*)
static char * buff;**************************
là j'ai beaucoup de mal à comprendre pourquoi la variable buff est déclarée static.
buff=new char [100];***********************
ici on crée un nouveau tableau en mémoire dynamiquement.
je ne comprends pas pourquoi on le déclare ici avec new, il n'y en a pas besoin.
un simple char buff[100] aurait été suffisant.
d'autre part, il n'y a pas de "delete" qui supprimes cette espace mémoire réservé, donc une erreur qui ne cause pas de crash visible, mais qui rend le programme pas bon du tout ! (fuite de mémoire!)
*(matiers+i)=new cha[strlen(buff)+1];******************************
c'est comme :
matiers[i] = new cha[strlen(buff)+1];******************************
on alloue chaque case du tableau "matiers" dynamiquement. (Ici c'est justifié).
Si tu nên comprends pas plus, il faut lire un cours sur les chaines de caractères et les tableaux de chaine.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionstrcpy(*(matiers + i), buff);************************
regarde l'aide de la fonction....
http://www.cplusplus.com/reference/cstring/strcpy/