Partage
  • Partager sur Facebook
  • Partager sur Twitter

Aide sur les arguments du main()

J'aimerais que mon fichier binaire c prenne en paramètres des int

Sujet résolu
    14 octobre 2019 à 16:11:05

    Bonjour, c'est encore moi.

    Je voudrais savoir si la fonction main() peut prendre en compte des paramètres entiers. Un peu comme :

    int main(int argc, int **argc)
    {
    /*Code*/
    }

    Est ce possible ?

    Parce qu'en utilisant gcc -o je voudrais avoir un binaire qui puisse prendre en compte des paramètres entiers de sorte à pouvoir y faire des opérations.

    Si impossible, avez vous une solution ?

    Merci d'avance..

    • Partager sur Facebook
    • Partager sur Twitter
      14 octobre 2019 à 16:22:51

      Non, le protoype du main() est int main(int argc,char *argv[]) (ou int main(void)).

      Donc, si tu apelles ton programme comme ceci: prog 11 12 13 , 11, 12 et 13 sont rangés dans argv[1], argv[2] et argv[3], et argc vaut 4.

      Pour convertir un char * (ce que sont les argv[....]) en int, tu peux utiliser atoi(), mais on lui péfère en général strtol(), qui permet une gestion des erreurs.

      -
      Edité par edgarjacobs 14 octobre 2019 à 16:27:44

      • Partager sur Facebook
      • Partager sur Twitter

      On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

        14 octobre 2019 à 16:28:47

        Je vois....

        Merci bien... ;-)

        • Partager sur Facebook
        • Partager sur Twitter

        Aide sur les arguments du main()

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown