pb de pointeur [C] - C - Programmation
Marsh Posté le 28-07-2003 à 15:56:21
ben il te faut donc un "tableau" de chaine de caractères, sinon pour utiliser ta méthode en un seul malloc, il faut se livrer à une sacré arithmétique, par pratique pour manipuler des lignes. 
 
donc faut faire en 2 passes 
 
1) allocation d'un "tableau" de char* 
2) pour chaque élément, allocation d'un "tableau" de char 
 
3) pour chaque élément, désallocation 
4) désallocation
Marsh Posté le 28-07-2003 à 15:56:30
| deviant a écrit : Encore un petit problème bête.  
     | 
 
 
 
  
 
Sportnawak. 
 
Tu devrais revoir les bases sur les pointerus et les tableaux, et même si t'as le courage pousser jusqu'au tableau de pointeurs.
Marsh Posté le 28-07-2003 à 16:13:27
Tableau de pointeur, je connais (enfin je pense) 
  
Code :
  | 
  
Par contre un tableau de pointeurs, j'ai oublié. 
C'est con car je l'avais fait il y a longtemps.
Marsh Posté le 28-07-2003 à 17:42:25
t'as jamais du etre au point si tu veux mon avis 
 
Code :
  | 
Marsh Posté le 28-07-2003 à 18:37:10
Code :
  | 
 
 
Voilà. ensuite tu lui passe un int**  à ta fonction. 
 
Code :
  | 
 
 
Tu peux bien sûr remplacer int** par char** ou n'importe quoi d'autre 
Marsh Posté le 28-07-2003 à 18:37:49
pour libérer la matrice 
 
Code :
  | 
Marsh Posté le 28-07-2003 à 18:40:50
c'est bien. tu peux utiliser calloc si tu veux eviter la phase de maz de la matrice
Marsh Posté le 28-07-2003 à 18:44:48
j'ai jamais utilisé calloc. C'est "phase de maz" ?
Marsh Posté le 28-07-2003 à 18:48:51
mise à zéro. calloc fait pareil que malloc, son prototype diffère un poil et il te garantit que la zone allouée est remplie de 0 binaire (donc ça convient pas pour tout, l'exemple qu'on prends toujours, c'est les flottants pour lesquels 0x00000000 l'est pas une valeur acceptable
Marsh Posté le 28-07-2003 à 18:53:30
Je vois merci  
 
Marsh Posté le 29-07-2003 à 16:09:55
Finalement j'ai utilisé une liste chainée et ça marche très bien. 
Merci de votre aide !
Marsh Posté le 28-07-2003 à 15:51:44
Encore un petit problème bête.
J'ai
Forcément ça segfault. J'utilise un pointeur car dans mon programme je ne connais pas le nombre de ligne à copier dans une variable alors je pensais faire des realloc au fur et à mesure mais c'est très moche et très lent.