Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1455 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

besoin de beaucoup d'aide sur la réalisation d'un codage Huffman en C

n°935387
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-01-2005 à 22:10:03  profilanswer
 

Reprise du message précédent :

wadcyr8_197 a écrit :

je viens de faire lis ce post à un gars de ma classe et il dit qu'il a eu besoin du "back to basic" aussi, par ailleurs, je ne crois pas avoir fait d'impasse, mais je reconnais avoir eu du mal à suivre le cour en amphi de 100 !!!!


Suivre les cours c'est bien, mais l'important est de s'entrainer un max chez soi (ou sur les machines de la fac, mais j'y crois pas trop...). Il est aussi indispensable d'avoir un support de cours sérieux (poly, bouquin, site web), et de poser des questions sur le cours (les forums sont faits pour ça et on a le temps d'aller en profondeur).
 
Par contre, lors d'un exercice (surtout aussi complexe qu'un codeur/encodeur de Huffman), les bases doivent être acquises (de la façon que j'ai indiqué avant), et on doit plus se concentrer que sur le problème (conception, réalisation, test). A ce moment là, le rôle du forum est d'aider au debuggage ou à la résolution de certains détails ardus, mais pas de faire un cours détaillé. C'est trop tard.


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
mood
Publicité
Posté le 02-01-2005 à 22:10:03  profilanswer
 

n°935391
pains-aux-​raisins
Fatal error
Posté le 02-01-2005 à 22:16:18  profilanswer
 

Emmanuel Delahaye a écrit :

Suivre les cours c'est bien, mais l'important est de s'entrainer un max chez soi (ou sur les machines de la fac, mais j'y crois pas trop...). Il est aussi indispensable d'avoir un support de cours sérieux (poly, bouquin, site web), et de poser des questions sur le cours (les forums sont faits pour ça et on a le temps d'aller en profondeur).
 
Par contre, lors d'un exercice (surtout aussi complexe qu'un codeur/encodeur de Huffman), les bases doivent être acquises (de la façon que j'ai indiqué avant), et on doit plus se concentrer que sur le problème (conception, réalisation, test). A ce moment là, le rôle du forum est d'aider au debuggage ou à la résolution de certains détails ardus, mais pas de faire un cours détaillé. C'est trop tard.


+1 :jap:

n°935398
wadcyr8_19​7
Posté le 02-01-2005 à 22:31:53  profilanswer
 

Emmanuel Delahaye a écrit :

Suivre les cours c'est bien, mais l'important est de s'entrainer un max chez soi (ou sur les machines de la fac, mais j'y crois pas trop...). Il est aussi indispensable d'avoir un support de cours sérieux (poly, bouquin, site web), et de poser des questions sur le cours (les forums sont faits pour ça et on a le temps d'aller en profondeur).
 
Par contre, lors d'un exercice (surtout aussi complexe qu'un codeur/encodeur de Huffman), les bases doivent être acquises (de la façon que j'ai indiqué avant), et on doit plus se concentrer que sur le problème (conception, réalisation, test). A ce moment là, le rôle du forum est d'aider au debuggage ou à la résolution de certains détails ardus, mais pas de faire un cours détaillé. C'est trop tard.


 
 
poser les questions en cours c'est bien, mais quand on est en petite classe ça passe, en amphi, les profs aiment pas
ensuite, à part les pointeurs et les allocations mêmoires (malloc), mes bases sont pas trop catastrophique, mais même l'explication du prof de td m'a encore plus embrouillé !

n°935400
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-01-2005 à 22:35:27  profilanswer
 

wadcyr8_197 a écrit :

poser les questions en cours c'est bien, mais quand on est en petite classe ça passe, en amphi, les profs aiment pas <...>


C'est pour ça que j'insiste sur le rôle des forums à ce moment là. T'as pas compris un truc en cours, tu rééssayes chez toi. En cas de problème -> forum. On est là pour ça...
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°935515
wadcyr8_19​7
Posté le 03-01-2005 à 09:12:07  profilanswer
 

Emmanuel Delahaye a écrit :

C'est pour ça que j'insiste sur le rôle des forums à ce moment là. T'as pas compris un truc en cours, tu rééssayes chez toi. En cas de problème -> forum. On est là pour ça...


 
ce qu'il y a c'est que je pensais avoir compris puisque le td qu'on a fait j'y arrivais, mais arriver a ce truc je m'apercois que ce n'etait pas le cas !
 
 
edit : miracle j'ai réussi à faire marcher ma table de fréquence à partir de mon prog original ça donne ça :  

Code :
  1. #include<stdio.h>
  2. #include<string.h>
  3. struct tableau2 /* on def une structure de table a deux lignes : une de char */
  4. {               /* et une de floattants                                      */
  5. char carac;
  6. float freq;
  7. };
  8. struct tableau2 tabf[256];
  9. // la fonction appartient verifie qu'un char de la phrase à coder est ou non dans la table de fréquence
  10. int appartient (char s, struct tableau2 tabf2[])
  11. {
  12.   int i;
  13.   for ( i = 0 ; i <256 ;i++ )
  14.     {
  15.       if (tabf2[i].carac == '\0')
  16.         break;
  17.       if ( s == tabf2[i].carac )
  18.         return i;
  19.     }
  20.   return -1;
  21. }
  22. //la fonction frequence cree la table de frequence
  23. // cependant, on rentre d abord dans le tableau les occurrences des lettres
  24. // et on divise a la fin par la longueur de la chaine pour avaoir les freq
  25. struct tableau2 * frequence (char phrase[])
  26. {
  27.   int cmp=-1; // compter pour savoir dans quelle colonne on se situe dans le tableau
  28.   int i;
  29.   int N=strlen(phrase);
  30.   //printf("sizeof : %i \n", N);
  31.   for ( i = 0 ; i  < N ; i++ )
  32.   {
  33.     //printf("i : %i \n", i);
  34.     int temp;
  35.     temp=appartient(phrase[i], tabf);
  36.     if ( temp == -1 )
  37.       {
  38.       cmp += 1;
  39.       tabf[cmp].carac=phrase[i];
  40.       tabf[cmp].freq=1;
  41.       }
  42.     else
  43.     tabf[temp].freq=tabf[temp].freq + 1;
  44.   }
  45.   //printf("%i \n", cmp);
  46.   for ( i = 0 ; i < cmp ; i++ )
  47.     {
  48.       tabf[i].freq=tabf[i].freq/N; // passage du nombre d occurrence a la freq
  49.       printf ("%i : %c, %f \n", i,tabf[i].carac,tabf[i].freq); // affichage du tableau de frequence
  50.     }
  51.   return tabf;
  52. }
  53. int main (void)
  54. {
  55.   //char *phra;
  56.   char phrase[]="peter le chien est tres petit";
  57.   //printf("Entrez votre phrase : \n" );
  58.   //scanf("%s",phra);
  59.   //int L=strlen(phra);
  60.   //char phrase[L]= *phra;
  61.   frequence(phrase);
  62. return 1;
  63. }


merci pour le coup de main  :jap:  
 
maintenant je vais passer à la construction de l'arbre en lui même !!! :cry:


Message édité par wadcyr8_197 le 03-01-2005 à 11:24:03
n°935585
Emmanuel D​elahaye
C is a sharp tool
Posté le 03-01-2005 à 11:28:26  profilanswer
 

wadcyr8_197 a écrit :


Sinon, pour revenir a l'histoire des 256 competeurs, j'ai relu les posts et je crois que je n'ai pas eu l'explications que j'esperais parce que j'ai pas super bien pose ma question.


Je reprends:

Citation :


Le tableau de compteurs a une taille de 256, donc un index de 0 à 255.
La table des caractères va de 0 à 255. Tu ne remarques rien ?


Ce qu'il fallait remarquer, c'est que les caractères étant numérotés de 0 à 255, ils peuvent servir d'index au tableau.
 
Le compteur de 'a', c'est tout simplement compteur['a']. Le compteur de 'Z', c'est compteur['Z'].
 
Il suffit donc de parcourir la chaine caractères par caractères, et d'incrémenter le compteur correspondant :


char const *p = s;
 
while (*p)
{
   compteur[*p]++;
   p++;
}
 


Si tu trouves ça difficile, tu vas mourir avec l'arbre...
 
Peut être que l'informatique n'est pas ta voie...


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°935699
wadcyr8_19​7
Posté le 03-01-2005 à 14:01:44  profilanswer
 

Emmanuel Delahaye a écrit :

Je reprends:

Citation :


Le tableau de compteurs a une taille de 256, donc un index de 0 à 255.
La table des caractères va de 0 à 255. Tu ne remarques rien ?


Ce qu'il fallait remarquer, c'est que les caractères étant numérotés de 0 à 255, ils peuvent servir d'index au tableau.
 
Le compteur de 'a', c'est tout simplement compteur['a']. Le compteur de 'Z', c'est compteur['Z'].
 
Il suffit donc de parcourir la chaine caractères par caractères, et d'incrémenter le compteur correspondant :


char const *p = s;
 
while (*p)
{
   compteur[*p]++;
   p++;
}
 


Si tu trouves ça difficile, tu vas mourir avec l'arbre...
 


 
 
ok, mais en fait, je m'obtinais sur un truc completement con je partais sur le principe que l'on avait uniquement compteur[0] .... compteur[255] j'avais oublié le fait qu'on pouvait utiliser d'autre denomination !!!  :pt1cable: et fatigue ça arrange pas les choses !!!
 
[citation]Peut être que l'informatique n'est pas ta voie...[/citation]
je pense que si, mais faut juste que je prenne l'habitude sur le mode de raisonnement qui ne correspond pas au mien.
ps : je suis pas en info mais en télécoms  :D

n°935974
rolphin
Posté le 03-01-2005 à 18:26:00  profilanswer
 

Les données pouvant être lu depuis n'importe quoi, je pense qu'il serait judicieux
de faire un test sur la longueur et non pas sur la valeur de p.
Un 0 terminal est beaucoup trop vite oublié.
 

Code :
  1. char const *p = s;
  2. while (*p)
  3. {
  4.    compteur[*p]++;
  5.    p++;
  6. }


 
Il faut penser à utiliser la longueur qu'un eventuel read() nous aurais retourné...

Code :
  1. unsigned int len;
  2. char const *p = s;
  3. while (len--)
  4. {
  5.    compteur[*p]++;
  6. }


 

n°936058
Emmanuel D​elahaye
C is a sharp tool
Posté le 03-01-2005 à 20:06:56  profilanswer
 

rolphin a écrit :

Les données pouvant être lu depuis n'importe quoi, je pense qu'il serait judicieux
de faire un test sur la longueur et non pas sur la valeur de p.


Il s'agit de tester la valeur de *p. (0 en l'occurence). En amont, il faut s'assurer de fournir une chaine conforme.

Citation :

Un 0 terminal est beaucoup trop vite oublié.


Si la chaine n'est pas conforme, il n'y a aucun moyen de connaître sa longueur.
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°936941
rolphin
Posté le 04-01-2005 à 17:11:30  profilanswer
 

Citation :

Il s'agit de tester la valeur de *p. (0 en l'occurence). En amont, il faut s'assurer de fournir une chaine conforme.


 
On peut très bien travailler sur des données ou le 0 est une donnée et pas
un marqueur...
 

Citation :

Si la chaine n'est pas conforme, il n'y a aucun moyen de connaître sa longueur.


 
D'ou l'utilité de par exemple le très connu Content-Length...
Il est _toujours_ mieux de travailler avec des tailles et non pas
de vérifier l'éventuelle présence d'un O terminal.
En plus on gagne un caractère à chaque fois, et ca c'est de la balle.
:p
 
De toute façon c'est la faute aux fonctions de stdio dont l'api est  
vraiment mal faite, car tout vient d'un read() qui lui renvoi la taille du block lu...  
Pourquoi avoir choisi de cacher cette information ?
Cela reste un non sens...
 
Si strcpy "and friends" n'avaient jamais existé, je me demande bien avec quoi nous nous amuserions actuellement...

mood
Publicité
Posté le 04-01-2005 à 17:11:30  profilanswer
 

n°936977
pains-aux-​raisins
Fatal error
Posté le 04-01-2005 à 17:23:13  profilanswer
 

roooohhh le gentil troll [:ddr555]


Message édité par pains-aux-raisins le 04-01-2005 à 17:23:24
n°937082
Emmanuel D​elahaye
C is a sharp tool
Posté le 04-01-2005 à 18:18:51  profilanswer
 

[citation=936941,40,9]On peut très bien travailler sur des données ou le 0 est une donnée et pas un marqueur...[/citation]
Ici, il était question de chaines C...

Citation :

Citation :

Si la chaine n'est pas conforme, il n'y a aucun moyen de connaître sa longueur.


D'ou l'utilité de par exemple le très connu Content-Length...
Il est _toujours_ mieux de travailler avec des tailles et non pas
de vérifier l'éventuelle présence d'un O terminal.
En plus on gagne un caractère à chaque fois, et ca c'est de la balle.


On gagne rien du tout en taille, car il faut bien stocker la longueur quelque part, par contre, on gagne en vitesse, ç'est sûr.
 
Ceci devrait t'interesser:
 
http://mapage.noos.fr/emdel/clib.htm
Module FSTR (Flexible Strings)


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°937950
rolphin
Posté le 05-01-2005 à 15:28:13  profilanswer
 


Citation :

Ceci devrait t'interesser:
 http://mapage.noos.fr/emdel/clib.htm
Module FSTR (Flexible Strings)


 
En effet j'utilise des stralloc, c'est exactement pareil ;]
 
L'énorme avantage c'est qu'en allouant toujours un peu plus on peut
se permettre de boucle de parcours de chaine en apparence pas tres sures,
comme aller voir deux elements plus loin que la fin de la string...
 
Ou ajouter un 0 terminal sans jamais se soucier de savoir si y'a de la place... y'a toujours de la place.  
 
Tu devrais je pense plus promouvoir ta lib... Ca ferait du bien au monde du C...
J'en ai une aussi basée sur libowfat: http://www.fefe.de/libowfat/

n°937989
pains-aux-​raisins
Fatal error
Posté le 05-01-2005 à 15:44:10  profilanswer
 

Emmanuel Delahaye a écrit :

Ici, il était question de chaines C...

Citation :

Citation :

Si la chaine n'est pas conforme, il n'y a aucun moyen de connaître sa longueur.


D'ou l'utilité de par exemple le très connu Content-Length...
Il est _toujours_ mieux de travailler avec des tailles et non pas
de vérifier l'éventuelle présence d'un O terminal.
En plus on gagne un caractère à chaque fois, et ca c'est de la balle.


On gagne rien du tout en taille, car il faut bien stocker la longueur quelque part, par contre, on gagne en vitesse, ç'est sûr.
 
Ceci devrait t'interesser:
 
http://mapage.noos.fr/emdel/clib.htm
Module FSTR (Flexible Strings)


Très intéreressant ;)

n°938804
rolphin
Posté le 06-01-2005 à 09:44:05  profilanswer
 


Quand je parlais de taille, je m'interessais au buffer
qui va ëtre rempli par les données. On ne perds plus
le dernier caractère.
 
Après, en effet non seulement on ne gagne pas de place,
mais on perds de la place, (façon de parler) car la longueur
va être stockée, dans unsigned int ou unsigned long... qui
est plus important qu'un char ...
 
Donc pour être tout à fait correct, ne pas utiliser de 0 terminal
et de stocker la taille autrepart, ca permet de gagner en vitesse,
de gagner en ''sécurité'' mais on perds un tout petit peu en place.
 
C'est d'autant plus important lorsqu'on utilise une structure bien
faite contenant, la taille de la string, sa longueur et la taille
effective d'allocation. (ce que fait stralloc, et fstr).
 
 

n°951764
wadcyr8_19​7
Posté le 12-01-2005 à 16:41:42  profilanswer
 

salut tout le monde
 
merci bien pour le coup de main, j'ai bien avance depuis, j'ai fini mon tableau de frequence et j'ai meme construit mon arbre (enfin presque), je compile correctement, mais j'ai un segmentation fault qui apparait mais pas a chaque fois et quand il commence a me le faire, j'ai juste besoin de mettre un printf dans ma fonction pour que ca passe :d
Le pire c que quand j'explore le prog avec gdb, l'arbre est bien creer ?!?
donc si quelqu'un a une idee pour ce petit bug :

n°952049
Sve@r
Posté le 12-01-2005 à 22:37:46  profilanswer
 

wadcyr8_197 a écrit :

salut tout le monde
 
merci bien pour le coup de main, j'ai bien avance depuis, j'ai fini mon tableau de frequence et j'ai meme construit mon arbre (enfin presque), je compile correctement, mais j'ai un segmentation fault qui apparait mais pas a chaque fois et quand il commence a me le faire, j'ai juste besoin de mettre un printf dans ma fonction pour que ca passe :d
Le pire c que quand j'explore le prog avec gdb, l'arbre est bien creer ?!?
donc si quelqu'un a une idee pour ce petit bug :


 
Oh lalalala !!! T'es tombé dans le pire des cas: un segfault qui apparaît de façon aléatoire et qui disparaît quand tu mets un "printf" en plus.
C'est typique d'un pointeur qui va pointer à un endroit où il n'a plus le droit d'aller (style il balaye un tableau de "n" éléments dans une boucle variant de "0" à "n" )
 
Sans avoir vu le code, j'envisagerais bien l'idée que, lorsque tu crées un noeud de ton arbre, tu aies oublié de mettre les pointeurs fils à "NULL". Ensuite, quand tu balayes ton arbre, tu dois probablement utiliser une fonction récursive du type  

Code :
  1. void balaye(t_arbre *noeud)
  2. {
  3.    if (noeud->gauche)
  4.       balaye(noeud->gauche);
  5.    ... traitement du noeud ...
  6.    if (noeud->droite)
  7.       balaye(noeud->droite);
  8. }


Si mon idée est correcte, quand tu arrives en fin de branche, comme ton dernier noeud n'a pas été bien initialisé, la fonction "balaye" voit que le pointeur gauche (ou droit) n'est pas nul et va chercher à explorer ce pointeur => segfault sauf les cas où le compilo lui a mis "nul" par hasard.
Enfin c'est une idée...

n°952106
matafan
Posté le 13-01-2005 à 00:56:17  profilanswer
 

Compile avec -g, ulimit -c unlimited, capture un core, et debug a partir du core.

n°952634
wadcyr8_19​7
Posté le 13-01-2005 à 20:12:03  profilanswer
 

j'ai finalement trouvé, c'est juste que le prog, n'aime pas qu'une fonction renvoie un pointeur qui a été défini en local, même si on lui fait un petit malloc ! :D
j'ai donc définit ledit pointeur en global et tout baigne !!!
maintenant faut que je passe à la lecture de l'arbre pour établir la table de codage (fils_gauche=0 et fils_droit=1)
ça va être drole :D
surtout pour le faire ce soir et réviser mes partiels de la semaine prochaine en même temps !!!

n°952664
Emmanuel D​elahaye
C is a sharp tool
Posté le 13-01-2005 à 20:59:19  profilanswer
 

wadcyr8_197 a écrit :

j'ai finalement trouvé, c'est juste que le prog, n'aime pas qu'une fonction renvoie un pointeur qui a été défini en local, même si on lui fait un petit malloc !


Pas normal. A mon avis, il y a un autre problème ou alors tu ne renvois pas la bonne valeur, ou l'allocation n'a pas fonctionné et tu retournes NULL...


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°952674
Lam's
Profil: bas.
Posté le 13-01-2005 à 21:06:44  profilanswer
 

...ou alors, il ne passe pas le pointeur par référence. Donc, le fait de l'allouer dans la fonction ne modifie pas sa valeur dans la fonction appellante.

n°952872
wadcyr8_19​7
Posté le 14-01-2005 à 08:24:13  profilanswer
 

pourtant, maintenant, tout marche correctement et c'et la seule chose que j'ai changée !
 
mais le C a ses raisons que la raison ignore :D

n°952887
pains-aux-​raisins
Fatal error
Posté le 14-01-2005 à 08:55:54  profilanswer
 

wadcyr8_197 a écrit :

pourtant, maintenant, tout marche correctement et c'et la seule chose que j'ai changée !
 
mais le C a ses raisons que la raison ignore :D


Le C a ses raisons normalisées par la norme ANSI que ta raison ignore :o
 
:D

n°952915
Emmanuel D​elahaye
C is a sharp tool
Posté le 14-01-2005 à 09:46:38  profilanswer
 

wadcyr8_197 a écrit :

pourtant, maintenant, tout marche correctement et c'et la seule chose que j'ai changée !


Tu as masqué le problème, mais ça ne veut pas dire qu'il est corrigé... En général, ça pète le jour de la démo...
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°952953
wadcyr8_19​7
Posté le 14-01-2005 à 10:50:41  profilanswer
 

ouais, mais qu'est ce que je peux faire comme test autres que sur machine différente et passer gdb (sachant que avant, avec gdb le seg fault je pouvais le trouver, ce qui n'et plus le cas maintenant) ?

n°952960
Lam's
Profil: bas.
Posté le 14-01-2005 à 11:00:46  profilanswer
 

Postes le code de la fonction qui faisait planter, on va jeter un oeil...

n°953067
wadcyr8_19​7
Posté le 14-01-2005 à 13:21:04  profilanswer
 

Lam's a écrit :

Postes le code de la fonction qui faisait planter, on va jeter un oeil...


 
voici, mais je crois que vous allez manquer de chose donc si vous voulez l'intégralité des source pour comprendre, c'et ici : http://www.enseirb.fr/~guizani/projetc/
 

Code :
  1. /* je rajoute les def ds structures : */
  2. /****************************/
  3. struct noeud {
  4.   char *caracteres;
  5.   float frequence;
  6.   struct noeud *fils_gauche;
  7.   struct noeud *fils_droit;
  8. };
  9. /* Un arbre est l'adresse de son noeud racine ou NULL s'il est vide. */
  10. typedef struct noeud * arbre;
  11. /************************************/
  12. #define MAX 256
  13. struct noeud tabf[MAX];
  14. int cmp=-1; /* compteur de longueur de tableau */
  15. arbre tab_arb[MAX];
  16. /* On passe a la construction de l'arbre */
  17. arbre cons_huff ( struct noeud * tab_freq )
  18. {
  19. int i,j;
  20. int compteur=cmp;
  21. arbre temp;
  22. /* conversion de tab_freq en talbeau d'arbre */
  23. for ( i = 0 ; i <= cmp ; i++ )
  24.   {
  25.    tab_arb[i]=arbre_cree_feuille(tab_freq[i].caracteres,tab_freq[i].frequence);
  26.   }
  27. /* contruction de l'arbre */
  28. while ( compteur > 0 )
  29.   {
  30.    for ( i = 0 ; i <2 ; i++ )
  31.     {
  32.      for ( j = compteur ; j > 0 ; j-- )
  33.       {
  34.        if ( noeud_frequence(tab_arb[j]) < noeud_frequence(tab_arb[j-1]) )
  35.         {
  36.          temp=tab_arb[j];
  37.          tab_arb[j]=tab_arb[j-1];
  38.          tab_arb[j-1]=temp;
  39.         }
  40.       }
  41.     }  /* fin du "petit tri" */
  42.    tab_arb[0]=arbre_cons(tab_arb[0], tab_arb[1]);
  43.    tab_arb[1]=tab_arb[compteur];
  44.    tab_arb[compteur]=NULL;
  45.    compteur--;
  46.   }
  47. return tab_arb[0];
  48. }


Message édité par wadcyr8_197 le 14-01-2005 à 13:22:00
n°953073
Lam's
Profil: bas.
Posté le 14-01-2005 à 13:42:49  profilanswer
 


Et c'est sur quelle variable que tu faisais un malloc ? (et tu la retournais comment ? )

n°953286
wadcyr8_19​7
Posté le 14-01-2005 à 19:09:09  profilanswer
 

c'est sur tab_arb que je faisais du malloc
et je la retournais avec le return de fin de fonction

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
[BESOIN AIDE Dreamweaver] Créa Site Web avec Panier de Vente en Ligneaide : problème pour un compteur de visiteur sur un site
Besoin d'aide pour un exercice.Principes d'héritage et de polymorphisme... à l'aide !
Aide sur une contrainte d'integrité...aide pour création forcée d'un fichier txt (et écriture)...
aide de créaion de formulaireBesoin d'aide requête MySQL
Plus de sujets relatifs à : besoin de beaucoup d'aide sur la réalisation d'un codage Huffman en C


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR