hobbes
Messages postés23Date d'inscriptionmercredi 12 février 2003StatutMembreDernière intervention 7 novembre 2003
-
4 avril 2003 à 14:18
cs_vieuxLion
Messages postés455Date d'inscriptionsamedi 26 octobre 2002StatutMembreDernière intervention 6 avril 2004
-
5 avril 2003 à 23:10
Bonjour,
Mon probleme est que je ne connais pas a l avance la taille du tableau que je souhaite cree. Je pensais alors :creer un tab de maniere dynamique de 1 case ( tabValues (int *)malloc(sizeof(int)); ) puis au fur et a mesure des besoins, rajouter une case. Comment faire. Si je fais (tabValues[PDAT->nbValues-1] (int *)malloc(sizeof(int));), (PDAT->nbValues-1 etant le nouvel element que je souhaite creer), il me fait un probleme avec le int * .
superpa
Messages postés113Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 5 janvier 2004 4 avril 2003 à 14:56
Si tu fais du C++ (j'en suis pas sûr puisque t'utilises malloc), ne te casses pas la tête. T'as les vector de la stl qui sont bien plus simples. Il y a au minimum une source sur ce site qui explique comment s'en servir).
cs_vieuxLion
Messages postés455Date d'inscriptionsamedi 26 octobre 2002StatutMembreDernière intervention 6 avril 20048 5 avril 2003 à 23:10
bonjour,
le conseil sur la STL est avisé
sinon, il te faudra gérer toi même les allocations/copie/libération
exemple :
1) alloc d'un seul 'int' sous la forme d'un tableau à 1 élément
2) pour en rajouter un :
alloc d'un tableau de deux 'int'
copie du premier 'int' dans le nouveau tableau
libération du premier tableau
... etc...
ceci n'est vraiment pas performant. Il vaudrait mieux allouer par paquets... comme le fait la STL