IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Comment rediriger le flux stdout venant d'une fonction ?


Sujet :

C

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 44
    Points : 38
    Points
    38
    Par défaut Comment rediriger le flux stdout venant d'une fonction ?
    Bonjour,

    j'ai un peu honte de poser cette question car je m'y connais un peu en C mais je n'ai jamais eu ce cas de figure.

    J'ai une librairie dans laquelle j'utilise une fonction qui fait appel à une fonction d'une autre librairie sur laquelle je n'ai pas la main.
    Cette fonction externe fait du fprintf(stdout) et je veux supprimer ce flux inutile (mais uniquement celui venant de cette fonction).

    En revanche, la fonction externe renvoie un code retour que j'utilise.

    Comment faire pour supprimer le flux vers stdout ?

    Merci d'avance,
    Y.

  2. #2
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 196
    Points : 17 165
    Points
    17 165
    Par défaut
    Il me semble qu'il faut utiliser freopen, sans garantie.

  3. #3
    Membre émérite
    Homme Profil pro
    sans emploi
    Inscrit en
    Janvier 2014
    Messages
    539
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : sans emploi
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2014
    Messages : 539
    Points : 2 601
    Points
    2 601
    Par défaut
    Bonjour,

    freopen est effectivement la fonction à utiliser dans ce cas. La norme C11 précise même en note de bas de page du paragraphe 7.21.5.4 The freopen function :
    ) The primary use of the freopen function is to change the file associated with a standard text stream
    (stderr, stdin, or stdout), as those identifiers need not be modifiable lvalues to which the value
    returned by the fopen function may be assigned.

  4. #4
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 196
    Points : 17 165
    Points
    17 165
    Par défaut
    Par contre, je ne sais pas comment on pourrait sauvegarder le flux standard.
    Dans une telle situation, j'aimerai rediriger stdout vers /dev/null, et faire en sorte qu'un autre flux mène à la sortie standard.

Discussions similaires

  1. [Wamp] Comment rediriger tous les mails sortants vers une adresse ?
    Par atom41 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 10/01/2012, 20h13
  2. Squid transparent,comment rediriger le flux https?
    Par kerkennah dans le forum Réseau
    Réponses: 1
    Dernier message: 02/08/2009, 11h04
  3. comment rediriger un flux vers un JTextArea
    Par glasgow dans le forum Composants
    Réponses: 6
    Dernier message: 22/05/2009, 15h32
  4. Lecture flux video venant d'une camera IP
    Par theblues dans le forum MATLAB
    Réponses: 3
    Dernier message: 29/07/2008, 19h12
  5. Affichage d'un flux mjpeg venant d'une Webcam
    Par olive_le_malin dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 21/02/2008, 09h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo