Bonjour,

J'essaye d'écrire un éditeur en mode console, le problème est que je n'y arrive pas.
J'avais tout d’abord pensé à créer une liste chaînée simple qui gère chaque ligne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
struct TAG_ligne
{
   char *texte;
   struct TAG_ligne *psuivant;
} ligne_depart
Si on veut supprimer le retour chariot d'une ligne ou effectuer un copier/coller, ça devient trop compliqué.

J'ai également pensé à créer un tampon par blocs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
#define TAILLE_BLOC 256
char *tampon=NULL;
int nombre_blocs=0;
...
Ajouts de caractères...
...
if (taille_du_texte(tampon) == nombre_blocs * TAILLE_BLOC)
{
   nombre_blocs++;
   realloc(tampon, nombre_blocs * TAILLE_BLOC);
}
Cette méthode est possible mais je ne sais pas si c'est la bonne voie.

Merci pour vos réponse
Logramme