bonsoir,
voila j'essaye de coder la fonctione echo_line voici son utilite :l lit l'entree standard par coup de 80 octets et ecrit le tout dans le
fichier indique en parametre. Si la ligne entree correspond a la chaine de
caracteres "quit", le programme quitte sans enregistrer cette derniere
ligne. Si le fichier existe deja, il sera remplace (le contenu precedent
sera perdu)
voici mon codage qui bien evidemment ne fonctionne pas:
ps: aucune erreur de compilation , juste de codage! merci pour votre aide
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 #include <stdlib.h> #include <fcntl.h> int echo_line(char *name, int size) { char *str; int fildes; int rd; if (size > 80) printf("Out of memory\n bad usage of function\n"); str = malloc(sizeof (*str) * size); if ( str = NULL) { printf("echec malloc\n"); return(0); } fildes = open(name, O_WRONLY); if (fildes == -1) return(0); rd = read(0, str, size); write(fildes, str, rd); free(str); } int main() { echo_line("salut", 80); }
Partager