s'il vous plaît pardonnez-moi s'il s'agit d'une question Noob, mais je suis un débutant à C, apprendre seulement pendant un certain temps. J'ai essayé d'écrire un programme qui résume deux nombres (fournis comme params à l'application). Le code est comme ceci:Accéder aux arguments de la ligne de commande dans C
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char** argv)
{
int a = atoi(argv[0]);
int b = atoi(argv[1]);
int sum = a+b;
printf("%d", sum);
return 0;
}
Mais je reçois des résultats incorrects - nombres énormes, même pour les petites entrées comme 5 et 10. Quel est le problème ici?
Pour le débogage d'un problème, assurez-vous d'imprimer les entrées et les sorties. La première chose à faire serait d'ajouter ''printf (" argv [0] =% s \ n ", argv [0]); printf ("argv [1] =% s \ n", argv [1]); 'suivi de' printf ("a =% d \ nb =% d \ n", a, b); 'après les appels à 'atoi()'. Si vous l'aviez fait, vous n'auriez probablement pas eu besoin de poser la question. (N'oubliez pas d'imprimer une nouvelle ligne après la réponse!). –
Aussi, c'est une question C; '#include' est un en-tête C++. Utilisez '#include '. –
Merci, fera l'affaire. – PeterK