Bonsoir,
je
souhaite faire un programme qui peut prendre un paramètre en argument,
ou le lisant dans stdin (le choix est fait grâce à getopt).
Le problème que je peux avoir, c'est que je dois traiter soit une
chaîne, soit un fichier (stdin).
Alors mon idée était d'écrire dans stdin pour ensuite lire (quoi qu'il
arrive).
Sauf que en faisant fprintf(stdin, "nawak"); ça ne marche pas.
Donc j'ai voulu faire fdopen(stdin, "w+"); pour changer les droits, mais
apparemment ça me le permet pas (ou je le fais mal).
Donc comment écrire dans stdin? Ou sinon, sachant que je dois gérer en
entrée une chaine de caractère ou le fichier stdin, quel est la meilleur
façon de faire pour ensuite traiter l'information?
Merci d'avance.
ps: je suis sur GNU/Linux, et je ne me préoccupe pas le moindre du monde que ça ne marchera pas sur les autres systèmes.
edit: en regardant la doc, c'est plutôt fdopen(fileno(stdin),"w+"); , mais ça ne change rien.
en regardant mieux, on peux faire directement fdopen(STDIN_FILENO,"w+");
Partager