ajout d'un élément dans un tableau langage C
Répondre à la discussion
Affichage des résultats 1 à 14 sur 14

ajout d'un élément dans un tableau langage C



  1. #1
    invite21bf1be3

    ajout d'un élément dans un tableau langage C


    ------

    Bonjour, alors j'aimerai ajouter un élément à un tableau qui contient déjà des éléments et que la taille initiale de ce tableau augmente en fonction des éléments ajoutés. Je sais que ci semble irréalisable en C mais y'a t il une solution pour faire ceci ? est-ce que la dimension d'un tableau en C peut être variable ?

    merci d'avance.

    -----

  2. #2
    pm42

    Re : ajout d'un élément dans un tableau langage C

    Non. Si tu veux faire cela, il faut soit que ton tableau soit plus grand au départ, soit que tu en crées un nouveau plus grand et que tu recopies dedans ou que tu utilises une structure de données plus adaptées.

  3. #3
    invite66e50ce0

    Re : ajout d'un élément dans un tableau langage C

    Bonjour kimsama,

    Tu ne peux pas faire ça avec des tableaux, je te conseille d'utiliser des listes chainées c'est plus simple pour ce que tu veux faire.

  4. #4
    pm42

    Re : ajout d'un élément dans un tableau langage C

    Citation Envoyé par Sawken Voir le message
    Tu ne peux pas faire ça avec des tableaux, je te conseille d'utiliser des listes chainées c'est plus simple pour ce que tu veux faire.
    Sauf s'il a besoin d'un accès indexé en temps constant par exemple.

  5. A voir en vidéo sur Futura
  6. #5
    invite66e50ce0

    Re : ajout d'un élément dans un tableau langage C

    Mais dans ce cas la il faut re-allouer un nouveau tableau à chaque fois, il n'y a pas d'autre solution,
    Ou allouer un tableau assez grand en faisant une prévision de taille qu'on ne va pas dépasser.

  7. #6
    invite2d7144a7

    Re : ajout d'un élément dans un tableau langage C

    Bonjour,

    Quand on veut augmenter la taille d'un tableau pour ajouter de nouveaux éléments, l'habitude veut qu'on fasse une augmentation suffisante pour plusieurs éléments, ce qui évite la recopie pour chaque élément ajouté.

    augmentation suffisante pour plusieurs éléments : dépend de la fréquence et du nombre d'éléments qui seront probablement ajoutés, à voir au cas par cas.


  8. #7
    polo974

    Re : ajout d'un élément dans un tableau langage C

    ne pas oublier de donner des nouvelles et de dire merci (comme par là) ...
    Jusqu'ici tout va bien...

  9. #8
    invite21bf1be3

    Re : ajout d'un élément dans un tableau langage C

    Re les amis merci à vous mais j'essaie toujours de résoudre le problème en utilisant que des tableaux puisque si j'opte pour les listes chainées mon code est trop long et je n'ai pas assez de temps pour le faire.

    Bon une petite question quel est le problème avec ce bout de code, on m'affiche une erreur au niveau de l'appel de la fonction :

    Code:
    static int AddElement(char* element,  char* tab[], int taille)
    {
    
        tab[taille]=element;
        return taille+1;
    
    }
    static const t_u8* s_measure_list[MAX_STATUS_INDEX] =
    {
    		 " Mesure 1 :        ",
    		 " Mesure 2 :        ",
    		 " Mesure 3 :        ",
    		 " Mesure 4 :         ",
    		 " Mesure 5 :       ",
    		 " Mesure 6 :       ",
    		 " Mesure 7 :       ",
    
    };
    //ajout d'éléments à la liste
     s_new_dim_mes = AddElement( "Mesure 8 :   ",  char  *s_measure_list,  7);//retourne la nouvelle taille
     add_mes=1;
    P.S. polo974 Je suis vraiment désolée si je n'avais pas fait signe avant mais c'est que je n'ai pas pu résoudre le problème

  10. #9
    pm42

    Re : ajout d'un élément dans un tableau langage C

    Nous donner l'erreur, ca aide. Ceci dit le
    Code:
    char  *s_measure_list
    dans ton appel de fonction ne doit pas aider...

  11. #10
    invite21bf1be3

    Re : ajout d'un élément dans un tableau langage C

    bon voilà j'ai modifié l'appel par :

    Code:
    static s_new_dim_mes = AddElement(char* "Mesure 8 :   ",  char*  s_measure_list[],  7);//retourne la nouvelle taille
    les erreurs que j'obtiens sont :
    error: expected expression before 'char'
    error: too few arguments to function 'AddElement'

  12. #11
    pm42

    Re : ajout d'un élément dans un tableau langage C

    C'est bien : tu as doublé ton erreur au lieu de la retirer.
    Essaie de relire la syntaxe d'un appel de fonction en C et tu verras qu'on ne met pas des char* ou autre devant les arguments.

  13. #12
    invite21bf1be3

    Re : ajout d'un élément dans un tableau langage C

    Oui c'est réglé merci pm42

  14. #13
    polo974

    Re : ajout d'un élément dans un tableau langage C

    Citation Envoyé par kimsama Voir le message
    ...

    P.S. polo974 Je suis vraiment désolée si je n'avais pas fait signe avant mais c'est que je n'ai pas pu résoudre le problème
    Oui, mais ce n'est pas en laissant tomber un problème simple pour en attaquer un autre plus corsé que tu vas progresser.

    Le problème des tableaux trop petits est un sujet délicat à traiter, et là-bas, tu n'avais pas compris qu'il fallait juste "déclarer pour de vrai" (on dit instancier en programmation objet) tes variables...
    Donc n'essaie pas d'aller plus vite que la musique. Reprends ton souffle et règle un problème à la fois...
    Jusqu'ici tout va bien...

  15. #14
    invite21bf1be3

    Re : ajout d'un élément dans un tableau langage C

    D'accord, mais tu parles de quelles variables exactement ?

Discussions similaires

  1. langage c, entrer un tableau de structure dans une fonction
    Par invitecd37efaf dans le forum Programmation et langages, Algorithmique
    Réponses: 3
    Dernier message: 10/02/2013, 14h31
  2. [Langage C] Erreur dans tableau ?
    Par invite48ca7510 dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 28/12/2012, 11h46
  3. Suppression d’élément dans un tableau, langage C.
    Par invitebf26947a dans le forum Programmation et langages, Algorithmique
    Réponses: 24
    Dernier message: 16/10/2012, 19h28
  4. langage c: suppression element d'une liste
    Par invite8b421ec7 dans le forum Programmation et langages, Algorithmique
    Réponses: 24
    Dernier message: 26/02/2012, 13h25
  5. questions sur les element du tableau periodique
    Par invite42c54503 dans le forum Chimie
    Réponses: 3
    Dernier message: 26/01/2009, 16h23