Est-il possible de définir argv et argc paramètres lors de l'exécution?
J'ai besoin de déboguer mon programme, le problème est que ce programme prend deux paramètres. Comment puis-je déboguer un programme qui prend en paramètres ?? Je peux en quelque sorte modifier argc et argv paramètres lors de l'exécution ??
Quelle est la plate-forme, et IDE/debugger?
Bref, la réponse est oui, vous pouvez. La réponse vient après que vous répondez à ses questions
Avec Visual Studio, par exemple: stackoverflow.com/questions/298708/...
Bref, la réponse est oui, vous pouvez. La réponse vient après que vous répondez à ses questions
Avec Visual Studio, par exemple: stackoverflow.com/questions/298708/...
OriginalL'auteur reminder | 2010-12-04
Vous devez vous connecter pour publier un commentaire.
La meilleure façon est de ne pas modifier les arguments lors de l'exécution, mais pour déboguer une instance qui a les arguments que vous voulez.
Pour Windows, vous pouvez le faire dans Visual Studio comme suit:
Alternativement lancer le programme comme à la normale à partir de la ligne de commande, et attacher le débogueur par la suite.
OriginalL'auteur Steve Townsend
Si vous êtes en invoquant le débogueur en ligne de commande, vous pouvez simplement ajouter vos arguments de ligne de commande et le débogueur de les transmettre à votre programme.
Si vous utilisez un IDE, il devrait y avoir un moyen de mettre les arguments qui seront transmis à votre programme (par exemple, dans Visual Studio, c'est dans les propriétés du projet sous "Débogage/Arguments de la Commande").
Cependant, si je suis dans une session de débogage et je veux de débogage à l'aide d'une variété de différents arguments de ligne de commande, je trouve ça pénible d'avoir à modifier les propriétés du projet continuellement. Pour cette raison, je vais souvent assurez-vous d'avoir mon
argc
/argv
analyse dans une fonction qui prend en paramètres au lieu d'agir surargc
/argv
directement, et ont conditionnellement compilé dans le code de débogage qui passe dans une codés en dur chaîne de ligne de commande (je trouve plus facile de modifier la chaîne dans le fichier source que de modifier les IDE les propriétés du projet) ou j'ai le débogage du code de l'invite de ligne de commande arguments.Je pratique un peu la routine qui va analyser une chaîne dans un
argv
de style de tableau, alors je peux passer que de la routine qui, normalement, analyseargc
/argv
.Donc les choses pourraient ressembler à quelque chose comme:
C'est pas forcément joli, mais je trouve ça plus pratique que de jouer avec les propriétés du projet.
Une bonne façon d'aller, en plus j'ai appris beaucoup de points, merci.
OriginalL'auteur Michael Burr
Si vous utilisez GDB:
OriginalL'auteur Martin York