C++: Comment utiliser les arguments de ligne de commande
Je sais que l'utilisation d'arguments de ligne de commande, je dois le faire.
int main(int argc, char* argv[])
Maintenant la plupart de la documentation que j'ai lu sur la prise en arguments de ligne de commande pour expliquer la situation, quelque chose comme ceci:
Arguments de ligne de commande après le nom d'un programme en
en ligne de commande, les systèmes d'exploitation DOS ou Linux, et sont transmis à
le programme à partir du système d'exploitation.
De sorte que le seul moyen que je connaisse pour ouvrir mon programme, est de l'ouvrir normalement comme je le ferais, soit démarrer le débogage ou ouvrez le fichier exe
Maintenant il semble ici que, à utiliser des arguments de ligne de commande le programme doit être ouvert différemment, en Utilisant la Ligne de Commande (DOS/Invite de Commande par exemple), puis d'écrire les arguments qui suivent.
Donc ma question est
Comment puis-je ouvrir mon programme à l'aide de la Ligne de Commande, et comment puis-je entrer dans les arguments après le nom du programme?
OriginalL'auteur Mohamed Ahmed Nabil | 2012-09-05
Vous devez vous connecter pour publier un commentaire.
Par souci de simplicité, nous supposerons que vous avez à l'aide de Windows 7.
La façon la plus simple est d'ouvrir une fenêtre DOS, puis de glisser-déposer qui vous demande. Cela permettra d'insérer le chemin d'accès à votre fichier exécutable. Par la suite, vous pouvez commencer à taper les arguments de ligne de commande que vous souhaitez passer. Il devrait ressembler à ceci:
Remarque: Comme indiqué dans les commentaires, cela ne fonctionne pas sur windows vista, un fait que je n'étais pas au courant au moment de l'écriture.
Si vous êtes en tapant vous-même (et il n'y a pas d'espaces dans un de vos dossiers), vous n'avez pas besoin de guillemets, mais si vous faites glisser et déposez-le dans l'invite de commandes, il va automatiquement insérer, juste au cas où.
Pourquoi avez-vous réécrire cette partie C:\Users\cscott
Vous ne le seraient pas. Je viens de vous montrer à quoi il pourrait ressembler dans mon invite de commande.
Le C:\Users\cscott> partie raconte-moi ce répertoire, je suis actuellement dans. Je peux changer ça en tapant cd directory_name. Donc, je pourrais aussi le type de cd des Documents et myApp.exe arg1 et obtenir le même résultat.
OriginalL'auteur Tsubashi
Je vais supposer que vous êtes en utilisant un IDE, et je vais prendre un sauvage deviner que c'est Visual Studio. Si je suis à droite, il y a deux approches: l'une, d'ouvrir le dossier contenant l'exécutable qui a été construit - il va être dans {Solution d'Annuaire}/{Répertoire}/bin/{Configuration} par défaut. Exécutez la ligne de commande. L'autre option est d'ouvrir les propriétés du projet, et sous le "Debug" de l'onglet (dans VS 2010 - il varie selon la version) mettez vos options de ligne de commande dans la case "arguments de ligne de Commande".
OriginalL'auteur Harper Shelby
Certaines manières dont les arguments peuvent être passés à un programme:
Ouvrir votre invite de commande (comme
cmd.exe
ou PowerShell sur Windows), puis tapez:your_program.exe arg1 arg2 arg3
.Vous pouvez faire la même chose dans un raccourci ou un script (comme un lot ou d'une sh de script).
Modifier la configuration d'exécution dans votre IDE.
Par exemple, Eclipse vous permet de définir des arguments de ligne de commande séparément pour chaque configuration d'exécution. Ceci est utile lors du développement et de débogage.
Sur Windows, faire glisser et déposer un fichier sur le fichier exécutable. Le fichier déposé du nom de fichier sera passé en argument de ligne de commande.
Sur Windows, associer une extension de nom de fichier avec une extension (
assoc
de commande) et d'associer ce fichier avec une commande qui exécute votre programme (ftype
de commande). Maintenant, quand un fichier est ouvert, soit dans l'interpréteur de commande ou par exemple en double-cliquant, ce qui se passe derrière les coulisses, c'est que votre programme est exécuté par le chemin d'accès à ce fichier comme argument.Exécuter votre exécutable par programmation à partir d'un autre programme et de passer des arguments variables.
Par exemple en Python:
subprocess.call(['my_program.exe','arg1','arg2'])
J'ai suivi la même procédure que vous avez suggéré , mais comment, entrez le chemin du dossier , pour mes dossiers de classes différentes , comme
D:\oranges\;
pour un dossier et d'autresD:\mangoes\;
etc comme cela ?Je ne suis pas sûr de ce que vous demandez. Si vous souhaitez passer plusieurs arguments, l'utilisation
"D:\oranges\" "D:\mangos\"
.il devrait y avoir
space
entre deux arguments ou;
?arguments de ligne de commande sont séparés par des espaces. Si un argument contient un espace, l'entourer de guillemets. Ceci est clairement démontré sur chaque réponse sur cette page.
OriginalL'auteur Kos
Dans Windows, vous devez naviguer à l'aide de l'invite de commande de votre exécutable emplacement et vous pouvez l'exécuter en disant
Myexe.exe first_arg second_arg
.Sinon, vous pouvez droit-cliquez sur le fichier exe dans le fichier de paramètres que vous pouvez spécifier des arguments de ligne de commande pour fournir lorsqu'il est ouvert par un double clic.
Une autre façon est aussi par l'écriture d'un simple script batch qui appelle simplement votre programme comme
C:/Full/Path/To/Your/Program/app.exe first_arg second_arg
et en cours d'exécution.Dans Visual Studio ou votre IDE préféré, vous aurez l'option dans les paramètres de projet pour spécifier des arguments de ligne de commande de votre programme lors de l'exécution de l'intérieur de l'IDE.
OriginalL'auteur Jesus Ramos
Voici un exemple simple que j'utilise dans linux
et u peut l'analyser comme ce
OriginalL'auteur Moataz Elmasry
OriginalL'auteur Skandh
Vous pouvez le faire en ouvrant une invite de commande et d'un cd sur le chemin et entrez le nom de fichier exe suivi de votre params:
où votre exe est bob et les deux paramètres sont bob et dylan...
...ou vous pouvez faire un raccourci et cliquez le bouton droit, sélectionnez propriétés, raccourci et ajouter les paramètres à la fin du champ cible.
Il y a peut être une option dans votre IDE en fonction de ce qui est.
OriginalL'auteur Daniel Casserly
Vous pouvez écrire quand le lancement à partir de l'invite de commande, vous pouvez faire de raccourci et ajouter des arguments après le nom, vous pouvez ajouter des arguments dans certains IDE lors du débogage ou vous pouvez cal votre programme avec d'autres programmes à l'aide de certains arguments.
OriginalL'auteur PovilasG
Quelque chose va commencer votre programme. C'est que quelque chose de
passer des arguments. Tous les obus va analyser la ligne de commande
(bien que pas toujours de la même façon) pour vous présenter les arguments.
Sous Windows, clic gauche avec la souris sur les boutons sur le bureau et dans la tâche
barre d'ouvrir une fenêtre de configuration, qui a un onglet "Raccourcis"
où vous pouvez entrer la ligne de commande comme une "Cible:". Les fichiers rc en vertu de
Unix (exécuté au démarrage) sont en fait des scripts shell, et le cron
les fichiers (accélération de start-up) également d'une ligne de commande (et pas seulement un
isolé de commande). Et ainsi de suite.
Dans d'autres contextes, vous pouvez mapper le type de fichier (extension) pour une commande
qui sera exécutée lorsque vous cliquez sur un fichier de ce type, ou
le télécharger. Dans de tels cas, si rien d'autre, vous devrez obtenir au moins le
chemin complet vers le fichier.
Dans les rares cas où vous ne pouvez obtenir le nom du fichier, il est
assez facile à écrire votre propre script shell pour ajouter des arguments lors de l'
il invoque votre programme.
OriginalL'auteur James Kanze