Bonjour,

Je n'arrive pas à rediriger perror() vers un fichier texte.

Extrait man perror()
La fonction perror() affiche un message sur la sortie d'erreur standard, décrivant la dernière erreur rencontrée durant un appel système ou une fonction de bibliothèque. La chaîne de caractère s est imprimée en premier, suivie d'un double-point ou d'un blanc, puis le message, suivi d'un saut de ligne.
J'ai donc redirigé stderr vers mon fichier texte, mais ça ne fonctionne pas.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
FILE *fp;
...
fp = freopen("log.txt","w",stderr);
...
fprintf(stderr,"Erreur\n");
perror();
...
Le fichier texte contient bien le message "Erreur", mais pas le message de perror()