IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

argument int en c++


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 48
    Points : 32
    Points
    32
    Par défaut argument int en c++
    Bonjour,
    comment faire pour passer un argument type "entier" en ligne de commande,

    pour passer un char
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    int main(int argc, const char *argv[])
    {
    ..
    cons char *nom;
    nom =argv[1]; 
    ..
    }
    ca marche par contre pour passer un entier ?
    je veux faire qq chose comme :
    ./monprogramme "nom" 1980

    1980 par exemple est la date de naissance

    Merci

  2. #2
    Membre actif
    Étudiant
    Inscrit en
    Octobre 2007
    Messages
    189
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2007
    Messages : 189
    Points : 213
    Points
    213
    Par défaut
    Bonjour,

    Tu récupères les données sous forme de caractères et tu les transformes en un autre type avec les stringstream. (-> FAQ : il y a un exemple.)

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juin 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 48
    Points : 32
    Points
    32
    Par défaut
    Je cherche tjs une solution

    int naissance =atoi(argv[1]);

    ca marche par contre le l'argument "int" se repete en boucle !!

    1980
    1980
    ...

    1980

    Merci

  4. #4
    Membre actif
    Étudiant
    Inscrit en
    Octobre 2007
    Messages
    189
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2007
    Messages : 189
    Points : 213
    Points
    213
    Par défaut
    atoi c'est du C.

    les stringstream sont bien plus pratiques, efficaces, ...

    FAQ : http://cpp.developpez.com/faq/cpp/in...RINGS_strtonum et d'autres

  5. #5
    Membre chevronné
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Points : 2 205
    Points
    2 205
    Par défaut
    atoi() c'est du C. En C++ on utilise les flux... stringstream ici.


    edit : trop tard.
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

  6. #6
    Nouveau membre du Club
    Inscrit en
    Juin 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 48
    Points : 32
    Points
    32
    Par défaut precision
    le parametre que je rentre en argument se repete en boucle
    meme avec

    les stringstream
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    int main(int argc[], const char *argv[])
    {
     
        const char *name = "name";
        name=argv[1]; 
        istringstream iss(argv[2]);
       iss >> data_naissance;
    ....   
    }
    >./monprogramme "toto" 1980

    output du programme

    1980
    1980
    1980
    ....
    ....

    Je ne comprends pas pour quoi 1980 s'affiche a l'ecran et pourquoi se repete en boucle.

    Mais a la fin j'obtiens le resultat demander

    Merci

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juin 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 48
    Points : 32
    Points
    32
    Par défaut
    Oups !!

    J'ai oublie un cout a l 'interieur
    d'une boucle

    le probleme est resolu
    Merci aux personnes qui ont repondu a cette discution

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. pthread_create et argument int
    Par PoZZyX dans le forum POSIX
    Réponses: 3
    Dernier message: 05/04/2010, 18h47
  2. Arguments des types float, int ?
    Par tintin72 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 16/06/2007, 10h26
  3. passer un int en argument d'un thread
    Par romainromain dans le forum POSIX
    Réponses: 3
    Dernier message: 08/12/2006, 09h37
  4. un int en argument
    Par jomannix dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 21/09/2006, 14h40
  5. Réponses: 4
    Dernier message: 10/04/2006, 22h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo