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 :

mettre une structure comme argument d'une fonction


Sujet :

C++

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut mettre une structure comme argument d'une fonction
    salut , bon voila je voudrai mettre comme arguments d'une fonction une structure! ( cette structure n'est d'autre que les coordonnées x y d'un point )
    le problème c'est quand je compile ça me renvoie toujours -1 !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    #include <iostream>
    #include <math.h>
    #include <conio.h>
    using namespace std;
    struct point {
       double x,y;
    };
     
    double distance(point const &X,point const &Y)
    {
        double r;
        r=sqrt((X.x-Y.x)*(X.x-Y.x)+(X.y-Y.y)*(X.y-Y.y));
        return r ;
    }
     
     main()
    {
        point a,b;
        double r;
        cout<<"saisir x de A"<<"\n"<<"saisir y de a"<<endl;
        cin>>a.x>>a.y;
        cout<<"saisir x de b"<<"\n"<<"saisir y de b"<<endl;
        cin>>b.x>>b.y;
        cout<<r<<endl;
     
        r=distance(&a,&b);
        cout<<"la distance entre a et b est"<<r<<endl;
        getch();
    }

  2. #2
    jmv
    jmv est déconnecté
    Membre confirmé Avatar de jmv
    Profil pro
    Enseignant
    Inscrit en
    Mai 2004
    Messages
    395
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mai 2004
    Messages : 395
    Points : 603
    Points
    603
    Par défaut
    Salut,
    Ici a et b sont des points, &a et &b sont des pointeurs, ta fonction veut des références donc ça ne marche pas.
    Enlève les & et ça ira mieux.

    Plus d'explications ici : http://cpp.developpez.com/faq/cpp/?p...-une-reference

    Autres remarques :
    - En c++ il vaut mieux inclure cmath que math.h. math.h est le fichier à inclure dans un programme C, cmath en est l'adaptation pour un programme C++
    - Évite conio.h qui ne fait pas parti de la librairie standard, si c'est pour uniquement utiliser getch(), il y a cin.ignore() qui fait + ou - la même chose.

    a+
    jm

  3. #3
    Membre confirmé Avatar de LinuxUser
    Inscrit en
    Avril 2007
    Messages
    857
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 857
    Points : 616
    Points
    616
    Par défaut
    Je pense que ta confusion vient de la signature de ta fonction qui passe par référence.
    Bien que le passage se fait par référence, c'est belle est bien la variable elle-même que tu dois fournir en argument lors de l'appel de la fonction (comme te l'a si justement indiqué jmv).

    Regarde ce lien à la section 4.6.5. Passage de paramètres par référence
    http://cpp.developpez.com/cours/cpp/?page=page_6

Discussions similaires

  1. Mettre une variable comme argument dans une fonction
    Par djun1 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 04/09/2012, 10h44
  2. Structure comme argument d'une fonction
    Par lagas12 dans le forum MATLAB
    Réponses: 1
    Dernier message: 08/08/2012, 17h14
  3. Réponses: 3
    Dernier message: 05/11/2009, 10h28
  4. Utiliser une structure comme argument d'une fonction
    Par guilermo dans le forum Débuter
    Réponses: 7
    Dernier message: 15/10/2009, 10h05
  5. une url comme argument d'une fonction
    Par khayyam90 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 18/10/2004, 20h15

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