2017-09-06 1 views
0

Donc, j'ai un exécutable que je cours en cmd avec un argument. Quand je l'exécute, ce programme demandera des entrées plusieurs fois. Je veux écrire toute l'entrée dans l'argument de sorte que je ne vais pas constamment appuyer sur entrer chaque entrée. Comment faire?Comment passer l'argument lorsque l'exécution s'exécute en entrée dans ce exécutable?

Par exemple, mon nom de programme est program.exe avec un argument et après je le lance, il me demandera d'entrer « y » ou « n », donc je seulement besoin de taper:

program.exe <argument> y

puis appuyez sur Entrée pour l'exécuter. Puis-je? Si je ne peux pas, comment le faire de même?

P.S. Le code source du programme est le script C et pour l'entrée il utilise scanf. Je ne peux pas changer le code source.

+0

cela aiderait-il? https://stackoverflow.com/questions/4871620/how-to-pass-multiple-params-in-batch –

+0

@ A.Joly Cela n'a pas fonctionné – fahadh4ilyas

Répondre

1

Vous pouvez mettre toutes vos entrées dans un fichier, par exemple inputs.txt, puis vous pouvez l'exécuter de cette façon program.exe<inputs.txt.

Notez que vous devez séparer les entrées avec un espace vide ou une nouvelle ligne. En outre, les entrées passées ici ne sont pas les mêmes que les entrées que vous obtiendrez avec la variable de vecteur d'argument (char ** argv). Ces entrées sont plutôt passées sur les appels à l'entrée de la console, que ce soit scanf ou cin (au cas où c'est C++)

+0

S'il y a un vrai argument dans mon programme, devrais-je le mettre dans ce fichier texte ou l'écrire comme argument? – fahadh4ilyas

+0

Cela fonctionne ... Merci .... – fahadh4ilyas

+0

arguments sont toutes les valeurs que vous tapez sur la ligne de commande avant d'exécuter l'application si 'programme.exe y quelque chose 'a 3 arguments –