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

R�seau C Discussion :

descripteur stdin stdout


Sujet :

R�seau C

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    193
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2002
    Messages : 193
    Par d�faut descripteur stdin stdout
    comment restaure les entree clavier et sortie ecran en c sous unix apres les avoir fermee avec close(0); et close(1); ????

  2. #2
    Membre confirm�
    Inscrit en
    D�cembre 2002
    Messages
    29
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2002
    Messages : 29
    Par d�faut
    les filedescriptor 0 et 1 n'ont pas besoin d'etre ouvert, il est par consequent inutile de les fermer...

    j'avoue ne pas savoir ce quil se produit si on les fermes, mais je sais que j'ai deja write sur 1 et read sur 0 sans open ni close et je n'ai jamais eu de probleme

  3. #3
    Membre � l'essai
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 5
    Par d�faut
    fermer les entr�es stdin et stdout permet de les rediriger (en mettant un autre fichier � la place)

    ainsi, on redirige, par exemple, tout ce qui est �crit sur stderr dans un fichier � part, ou tout ce qui saisi dans stdout dans un socket.

    pour les r�tablir, tu peux peut-�tre essayer de copier le fichier avant de le supprimer.

    stdin doit �tre un FILE *, essaie peut-�tre de faire
    FILE tmpStdin = & stdin; mais bon chuis pas sur du tout que �a marchera

  4. #4
    Expert �minent
    Avatar de adiGuba
    Homme Profil pro
    D�veloppeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par d�faut
    Salut,


    Il y a un moyen tout simple : dup() et dup2()

    Ces deux fontions cr�es une copie d'un descripteur de fichier.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    int old_stdin, old_stdout;
     
    old_stdin = dup (0); /* On copie le descripteur de stdin */
    old_stdout = dup (1); /* On copie le descripteur de stdout */
    + d'info ici:
    http://www.developpez.net/forums/viewtopic.php?t=45287

    a++
    adiGuba [