Mettre STDIN sur entrée clavier

Résolu
Sara426 Messages postés 782 Statut Membre -  
juliencolin54 Messages postés 238 Statut Membre -
Bonjour,

Je voudrais remettre STDIN sur la saisie au clavier.

Quand j'exécute mon programme je le lance avec < :
par exemple : ./prog < test

Du coup mon STDIN change et j'ai un problème avec les scanf après.

Comment est-ce que je peux rechanger le STDIN pour repartir sur l'entrée au clavier ?

Cordialement,
Sara.

A voir également:

2 réponses

fiddy Messages postés 11653 Statut Contributeur 1 847
 
Bonjour,
Cela n'a rien à voir avec le C, il s'agit du comportement normal du shell.
Tu mets < test, cela signifie que tu fais une redirection de stdin sur le fichier test. Si tu enlever ce comportement, il te suffit de faire : ./prog tout simplement.
0
juliencolin54 Messages postés 238 Statut Membre 55
 
"cela signifie que tu fais une redirection de stdin sur le fichier test"
plutôt
"Cela signifie que tu redirige ton fichier dans l'entrée standard (stdin)"

Ainsi si :
?> cat test
ls
cd
ls

Quand tu lanceras ton programme c'est comme si tu avais tappé toi même dans stdin les commandes l'une après l'autre.

Donc
./prog
ls\n
(...)
cd\n
(...)
ls\n
(...)

<=>
./prog < test
0