Salut à tous.
Je suis étudiant et dans le cadre d'un projet je dois réaliser en C la commande ed sous UNIX.
Il s'agit d'un éditeur de texte basique. N'étant pas doué, je commence déja par sauvegarder une ligne. Mais je ne sais pas comment faire pour sauvegarder plusieurs lignes. Quelqu'un peut-il m'aider par pitié ?
Voila mon code :
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdio.h>
#include <stdlib.h>
 
 
void saisie (char *chaine, int max_car)
{
  char car = ' ';
  int nb_car = 0;
 
  while ((car != 10) && (nb_car < max_car))
  {
    car = getchar();/* Saisie d'un caractère */
    /* Si la touche backspace a été préssée ... */
    if (car==127)
    {
      printf("\b");
      /* Mise à jour de la position dans le tableau */
      nb_car--;
    }
    else
    {
      /* Ajout du caractère dans le tableau */
      chaine [nb_car] = car;
      printf("%c",car);
      /* Mise à jour de la position dans le tableau */
      nb_car ++;
    }
 
  }
  if (chaine[nb_car-1]==10) nb_car--;
  else printf("\n");
  chaine [nb_car] = 0;
}
 
int main ()
{
  char chaine [100];
  char message [] = "Votre saisie : ";
  printf ("%s\n", message);
  /* 10 : Laisser de la place pour le 0 binaire de fin de chaîne */
  saisie (chaine,100);
  printf ("Votre saisie : %s\n",chaine);  /* Affichage du résultat */
 
  return(0);
}