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

Langage Pascal Discussion :

[LG]Mémoire dynamique


Sujet :

Langage Pascal

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2003
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 2
    Points : 2
    Points
    2
    Par défaut [LG]Mémoire dynamique
    La notion de mémoire dynamique est assez nouvelle por moi si bien que je n'est pas encore put mettre en application mes connaisances.
    J'ai appris le fonctionnement (restant dans les grandes lignes similaire avec chaque language) sur un livre de C.
    Seul probleme
    La "déclaration" de tableau dynamique étant proche (New ou GetMem) dans les deux language, je n'ai pas trouvé, en revanche, d'équivalant pour la fonction realloc(). En effet cette fonction permet de redéfinir (agrandir ou diminuer) la taille d'un variable dynamique (tableau pou mon cas) (en gardant l'addresse de cette variable ou en en renvoyant une nouvelle).
    En clair.
    Comment peut-on modifier la taille d'une variable dynamique sans écraser les information contenues?

  2. #2
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    Je ne crois pas qu'il existe une telle fonction en pascal, et la solution serait de créer un nouveau bloc plus grand, d'y insérer les valeurs contenues dans l'ancien bloc ( avec move par exemple ) et ensuite d'effacer le petit bloc...
    a+
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  3. #3
    Membre expert
    Avatar de Eric Sigoillot
    Inscrit en
    Mars 2002
    Messages
    1 212
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 212
    Points : 3 369
    Points
    3 369
    Par défaut
    En effet, le gestionnaire mémoire de Turbo Pascal est proprement mer....

    Ils ont complètement oublié chez Borland que l'on pouvait avoir besoin de retailler un bloc mémoire ! Résultat : il faut créer un autre bloc de mémoire avant de libérer l'ancien. Ca consomme de la RAM en plus, et si on est limite, c'est cuit !

    Même l'unité Memory ne dispose pas cette fonctionnalité. Pour pouvoir accéder à ça, il faut te procurer une unité qui gère le tas différemment.

    A+
    Règles du forum
    F.A.Q Pascal

    Pour me joindre (aucune question technique, merci)

  4. #4
    Membre à l'essai
    Inscrit en
    Octobre 2003
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 21
    Points : 12
    Points
    12
    Par défaut
    Et set length(T,integer) ?C'est quand même pour changer la taille du tableau...

  5. #5
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    SetLength n'existe qu'en Delphi...
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  6. #6
    HRS
    HRS est déconnecté
    Membre confirmé
    Avatar de HRS
    Inscrit en
    Mars 2002
    Messages
    677
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 677
    Points : 638
    Points
    638
    Par défaut
    non, SetLength marche aussi en FreePascal 1.9.2

Discussions similaires

  1. Creation de fiche dynamique
    Par Mouss26 dans le forum C++Builder
    Réponses: 7
    Dernier message: 24/07/2002, 07h56
  2. comment creer un alias dynamique avec BDE et ODBC
    Par david33 dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/07/2002, 11h50
  3. Création dynamique de TImages
    Par Dric dans le forum C++Builder
    Réponses: 10
    Dernier message: 08/07/2002, 12h36
  4. Réponses: 4
    Dernier message: 13/05/2002, 16h43
  5. repertoire temp dynamique
    Par killpilot dans le forum C
    Réponses: 2
    Dernier message: 26/04/2002, 16h19

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