#include #include #include #include #define AVANCER 256 #define STDOUT 1 #define STDERR 2 void erreur(ssize_t resultat, char* message){ if (resultat==-1){ perror(message); exit; } } int main(int argc, char** argv){ int descripteur; ssize_t echec; char tampon[AVANCER]; if (argc < 2){ echec = write(STDERR,"Mauvaise utilisation !\n",23); erreur(echec, "Affichage sur stderr"); return EXIT_FAILURE; } descripteur = open(argv[1], O_RDONLY); erreur((ssize_t) descripteur, "Ouverture du fichier"); while (echec = read(descripteur, tampon, AVANCER)>0){ echec = write(STDOUT,tampon,echec); erreur(echec,"Affichage sur stdout"); } erreur(echec,"lectureFichier"); erreur(close(descripteur),"fermeture du fichier"); return EXIT_SUCCESS; }