IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Allocation dynamique de memoire


Sujet :

C

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 213
    Par défaut Allocation dynamique de memoire
    Voila, j'ai beau chercher ds la FAQ et ds les messages précedents, j'ai du mal a comprendre comment fonctionne l'allocation dynamique de mémoire.

    J'ai un programme qui lit un fichier texte et qui le decortique en fonction de certains éléments.

    Je souhaiterai par exemple ranger tous les elements du type NOM.

    Il faudrai donc que j'utilise un tableau à deux dimensions du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    char NOM[nombre de fois que je rencontre un élement de type NOM][taille de la chaine NOM]
    La taille de la chaine NOM ets connu et fixe soit N

    Par contre je ne connais pas du tout le nombre d'éléments de type NOM que je vais rencontrer, donc il est impossible d'allouer statiquement une taille de tableau.

    Est

  2. #2
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Salut
    Il n'y a pas en C de type tableau "extensible" comme le proposent d'autres langages
    Il faut se le creer
    Un moyen courant est d'utiliser une liste chaînée et pour cela

  3. #3
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut
    Citation Envoyé par Gruik
    Il n'y a pas en C de type tableau "extensible" comme le proposent d'autres langages
    Si avec la fonction realloc

    Description des mécanismes d'allocation dynamique de mémoire en langage C

    Bon courrage

  4. #4
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par défaut
    Citation Envoyé par gege2061
    Pas vraiment car on ne peut rajouter directement d'élément supplémentaire; il faur d'abord réallouer puis incorporer l'élément.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2005
    Messages : 119
    Par défaut
    tu a le choix ... liste chainée ou double liste chainée Pour l'utilisation, ba le net doit être turffé d'explication. Mais bon si tu maitrise les pointeur tu n'aura aucun problèmes.

  6. #6
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Comme gege2061 l'a déjà dit, un simple tableau de tableau sur char en allocation dynamique, agrandissement avec realloc, ca devrait suffir, pas la peine de s'embarasser avec une liste chaînée !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

Discussions similaires

  1. Allocation dynamique en memoire
    Par kali38 dans le forum C++
    Réponses: 9
    Dernier message: 30/12/2014, 12h29
  2. Réponses: 4
    Dernier message: 17/06/2014, 17h45
  3. [C] Allocation dynamique de memoire
    Par xc78370 dans le forum C
    Réponses: 9
    Dernier message: 29/11/2006, 18h57
  4. Allocation Dynamique de Memoire Avec Operateur New
    Par msstaf dans le forum C++Builder
    Réponses: 3
    Dernier message: 30/06/2006, 15h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo