A voir également:
- Traitement de texrte en C - gestion de mémoire
- Mémoire vive - Guide
- Reconsidérer le traitement de vos informations à des fins publicitaires - Accueil - Réseaux sociaux
- Traitement de texte gratuit - Guide
- Ce logiciel gratuit et léger est parfait pour remplacer Word, même sur un vieux PC - Guide
- RAM : type, format, CAS, vitesse, tout sur la mémoire vive - Guide
4 réponses
Désolé j'avais pas trop le temps de donner plus d'infos j'écris de mon bahut :(.
Donc voilà le ppb en détail:
j'ai mis en place une liste chainée, chaque structure contient une ligne du texte que l'utilisateur tape, on crée une nouvelle structure a chaque retour chariot. Je compte limiter la taille de la ligne selon la taille de l'écran de l'utilisateur et la taille de la police système, et mettre un retour chariot automatique à chaque bout de ligne. Jusqye là ca va. Mais le pb c'est si l'utilisateur redimensionne sa fenêtre; la taille des lignes va varier, et les lignes ne correspondront plus. En gros les maillons correspondront à plus d'une ligne :(. J'utilise malloc pour réserver la mémoire de mes structures, mais ca serait assez bourrin je pense d'utiliser realloc(et non calloc!) pour redimensionner la taille des tableaux.. Bref je galère.. (PS: je parle en prog win, s'il y a des fonctions spécifiques n'hésitez pas!). Merci d'avance.
Donc voilà le ppb en détail:
j'ai mis en place une liste chainée, chaque structure contient une ligne du texte que l'utilisateur tape, on crée une nouvelle structure a chaque retour chariot. Je compte limiter la taille de la ligne selon la taille de l'écran de l'utilisateur et la taille de la police système, et mettre un retour chariot automatique à chaque bout de ligne. Jusqye là ca va. Mais le pb c'est si l'utilisateur redimensionne sa fenêtre; la taille des lignes va varier, et les lignes ne correspondront plus. En gros les maillons correspondront à plus d'une ligne :(. J'utilise malloc pour réserver la mémoire de mes structures, mais ca serait assez bourrin je pense d'utiliser realloc(et non calloc!) pour redimensionner la taille des tableaux.. Bref je galère.. (PS: je parle en prog win, s'il y a des fonctions spécifiques n'hésitez pas!). Merci d'avance.
Une méthode qui ne prend pas beaucoup de place consiste à séparer la liste chaînée de son contenu.
La structure ne doit pas contenir la chaîne, mais seulement un pointeur sur la chaîne, copie de la saisie (une zone banalisée, de taille max) dans une nouvelle zone créée par "[m]alloc". C'est l'adresse de cette nouvelle zone qu'on utilise comme pointeur dans la liste.
Attention ! Pour les mises à jour ou les suppressions, ne pas détruire le pointeur avant d'avoir libéré l'espace correspondant à la chaîne concernée.
La structure ne doit pas contenir la chaîne, mais seulement un pointeur sur la chaîne, copie de la saisie (une zone banalisée, de taille max) dans une nouvelle zone créée par "[m]alloc". C'est l'adresse de cette nouvelle zone qu'on utilise comme pointeur dans la liste.
Attention ! Pour les mises à jour ou les suppressions, ne pas détruire le pointeur avant d'avoir libéré l'espace correspondant à la chaîne concernée.