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 :

fuite memoire avec les termcaps


Sujet :

C

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 165
    Par défaut fuite memoire avec les termcaps
    Bonsoir tout le monde,

    je tente de programmer un petit logiciel dans lequel j'utilise les termcaps.
    Je souhaite eviter les fuites memoires mais lorsque je check si j'en ai je me retrouve avec ca:

    ==42831== 44 bytes in 1 blocks are definitely lost in loss record 3 of 12
    ==42831== at 0x3C03418B: malloc (in /usr/local/lib/valgrind/vgpreload_memcheck.so)
    ==42831== by 0x3C066B97: _nc_init_entry (in /lib/libncurses.so.5)
    ==42831== by 0x3C062972: _nc_parse_entry (in /lib/libncurses.so.5)
    ==42831== by 0x3C0608FB: _nc_read_entry_source (in /lib/libncurses.so.5)
    ==42831==
    ==42831==
    ==42831== 78 bytes in 1 blocks are definitely lost in loss record 5 of 12
    ==42831== at 0x3C03418B: malloc (in /usr/local/lib/valgrind/vgpreload_memcheck.so)
    ==42831== by 0x3C066BAF: _nc_init_entry (in /lib/libncurses.so.5)
    ==42831== by 0x3C062972: _nc_parse_entry (in /lib/libncurses.so.5)
    ==42831== by 0x3C0608FB: _nc_read_entry_source (in /lib/libncurses.so.5)
    ==42831==
    ==42831==
    ==42831== 1656 bytes in 1 blocks are definitely lost in loss record 10 of 12
    ==42831== at 0x3C03418B: malloc (in /usr/local/lib/valgrind/vgpreload_memcheck.so)
    ==42831== by 0x3C066BCA: _nc_init_entry (in /lib/libncurses.so.5)
    ==42831== by 0x3C062972: _nc_parse_entry (in /lib/libncurses.so.5)
    ==42831== by 0x3C0608FB: _nc_read_entry_source (in /lib/libncurses.so.5)
    ==42831==
    Le probleme est que je ne vois pas ce que je dois free ...
    Est ce que quelqu'un aurait une petite idee?

    Merci

  2. #2
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut
    Désolé, je n'ai pas ma boule de cristal et les autres membres non plus d'ailleurs

    Comprend par là que sans code on aura vraiment du mal à t'aiguiller
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 165
    Par défaut
    Excuses moi pour le trop peu d'information fourni

    en gros mon code ressemble a ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    typedef struct          s_term
    {
      char                  *term;
      char                  *bp;
      char                  t[4096];
      char                  *area;
      char                  *clstr;
    }                       t_term;
     
     
    static void     init(t_term *term)
    {
      term->term = getenv("TERM");
      tgetent(term->bp, term->term);
      (term)->area = (term)->t;
      (term)->clstr = tgetstr("cl", &(term)->area);
    }
     
    int             main(int ac, char **av, char **env)
    {
      t_term        term;
     
      init(&term);
      tputs(term.clstr, 1, my_outc);     
      free(term.bp);
      return (0);
    }
    Pour le moment le code ici est la juste pour faire un clear de l'ecran (mais j'aurais besoin des termcaps pour plus de choses par la suite )

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 165
    Par défaut
    est ce qu'il y a des fonctions specifiques pour free?

Discussions similaires

  1. fuite memoire avec sfml
    Par themulot dans le forum SFML
    Réponses: 2
    Dernier message: 27/11/2007, 10h25
  2. [2.0] Comment tracer les fuites mémoire ?
    Par StormimOn dans le forum C++/CLI
    Réponses: 9
    Dernier message: 02/11/2007, 07h22
  3. Problemes de memoires avec les tableaux: outOfMemoryError
    Par Battosaiii dans le forum Langage
    Réponses: 7
    Dernier message: 16/07/2006, 16h50
  4. cherche sujet memoire en rapport avec les jeux videos
    Par elekis dans le forum Développement 2D, 3D et Jeux
    Réponses: 8
    Dernier message: 18/03/2006, 10h27
  5. probleme avec les allocations memoires
    Par david35 dans le forum C
    Réponses: 5
    Dernier message: 21/10/2005, 11h49

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