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 :

syntaxe C++


Sujet :

C++

  1. #1
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 42
    Par défaut syntaxe C++
    Salut, je débute en c++ et je suis tombé sur un code avec des "?" et autres ":" et si j'ai bien compris c'est une sorte de boucle if, mais bon j'aimerai bien trouver une doc qui explique bien le truc, alors si vous en connaisez une merci de m'aider!
    J'ai encore un autre souci, c'est ce truc "->" si vous savez ce que c'est merci de bien vouloir me le dire, heuuuuu oui une "dernière" question, peut-on écrire ça " *param+=*param1 " en fait, je ne comprends pas comment on peut faire une somme ou une égalité avec un pointeur
    Je vous remercie d'avance pour votre aide et de toute vos réponses

  2. #2
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par défaut
    Bonjour,

    tu trouveras toutes les réponses quant à la syntaxe et aux instructions de base du C++ ici : http://c.developpez.com/cours/
    ( c'est fait pour )

  3. #3
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 42
    Par défaut
    En fait j'ai déjà regardé sans grand succes mais je vais y jeter encore un coup d'oeil histoire d'être sûr, merci

  4. #4
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    *param += *param1, ce n'est pas une somme sur des pointeurs, on prend ce qui est pointé par chaque pointeur et on fait l'addition et l'assignation dessus.

  5. #5
    Membre chevronné Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Par défaut Re: syntaxe C++
    --> Essai d'écrire plus lisiblement !!

    Citation Envoyé par milanista
    des "?" et autres ":" et si j'ai bien compris c'est une sorte de boucle if
    IF n'est pas une boucle, mais un branchement conditionnel. Autrement dit, tu peux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    String monTexte = "";
    if (toto == 0)
    {    monTexte = "Bonjour"; }
    else
    {   monTexte = "Au revoir";}
    cout << monTexte << endl;
    Ce code affichera Bonjour si la variable toto vaut 0, sinon il affichera Au revoir !

    Tu peux remplacer ce code, par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String monTexte = "";
    monTexte=(toto == 0)?"Bonjour":"Au revoir";
    cout << monTexte << endl;
    Avant le ? tu mets ta condition entre (). Ensuite, entre le ? et les : tu mets la valeur à affecter à ta variable si la condition est vraie, et après les : c'est le cas du else précédent !

    J'ai encore un autre souci, c'est ce truc "->" si vous savez ce que c'est merci de bien vouloir me le dire
    Ce "truc" -> (flêche) sert à accèder aux propriétés ou méthodes membres de la classe de l'objet que tu as déclaré. Pour utiliser la ->, il faut avoir déclarer un pointeur sur un objet, sinon il faut utiliser l'opérateur point .

    une "dernière" question, peut-on écrire ça " *param+=*param1 " en fait, je ne comprends pas comment on peut faire une somme ou une égalité avec un pointeur
    Oui, tu peux ecrire *param+=*param1. en fait, il faut utiliser * pour accèder à l'objet pointé par ta variable param.

    Va faire un tour sur les tutoriels du site, ils sont très bien faits : http://c.developpez.com/cours/

  6. #6
    Membre éclairé Avatar de vdumont
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    510
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 510
    Par défaut
    string et non String

  7. #7
    Membre chevronné Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Par défaut
    Citation Envoyé par vdumont
    string et non String
    Désolé je ne me suis pas relu !

  8. #8
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 42
    Par défaut
    Citation Envoyé par Miles
    *param += *param1, ce n'est pas une somme sur des pointeurs, on prend ce qui est pointé par chaque pointeur et on fait l'addition et l'assignation dessus.
    ok, mais si je déclare mon objet pointé au début est ce que je peux me passer de "l'étoile", moi j'ai tjs fait sans ex. je veux pointé sur un élément d'un tableau, je déclare mon tableau "double *x=new double[n];" et qd je veux faire une addition ou autre je mets "x[i]+=1;" et non "*x[i]+=1;"!
    Il y'a une différence entre les deux ou pas?

  9. #9
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 42
    Par défaut Re: syntaxe C++
    Citation Envoyé par niglo
    Avant le ? tu mets ta condition entre (). Ensuite, entre le ? et les : tu mets la valeur à affecter à ta variable si la condition est vraie, et après les : c'est le cas du else précédent !
    Y'a toute une syntaxe comme ça ou alors c'est juste celle-ci qui est spécifique à la "boucle" if (c'est plus facile de dire boucle, alors ne m'en veux pas )

  10. #10
    Membre chevronné Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Par défaut Re: syntaxe C++
    Citation Envoyé par milanista
    Y'a toute une syntaxe comme ça ou alors c'est juste celle-ci qui est spécifique à la "boucle" if (c'est plus facile de dire boucle, alors ne m'en veux pas )
    En gros, tu peux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (conditon) ? code si vrai : code si faux
    Par contre, arrête de dire une boucle IF, car ca n'a aucun sens et ca montre une non compréhension de ta part !!!
    Dis simplement un IF !

  11. #11
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 42
    Par défaut Re: syntaxe C++
    Citation Envoyé par niglo
    ca montre une non compréhension de ta part !!!
    C'est exactement le mot
    merci quand même, je jeterai un coup d'oeil aux tutoriaux et je comprendrai sans doute mieux, à ciao

  12. #12
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par milanista
    Citation Envoyé par Miles
    *param += *param1, ce n'est pas une somme sur des pointeurs, on prend ce qui est pointé par chaque pointeur et on fait l'addition et l'assignation dessus.
    ok, mais si je déclare mon objet pointé au début est ce que je peux me passer de "l'étoile", moi j'ai tjs fait sans ex. je veux pointé sur un élément d'un tableau, je déclare mon tableau "double *x=new double[n];" et qd je veux faire une addition ou autre je mets "x[i]+=1;" et non "*x[i]+=1;"!
    Il y'a une différence entre les deux ou pas?
    ...
    Il va falloir que tu jettes un coup d'oeil sur des cours de C++ ou de C : http://c.developpez.com/ C'est tout un cours sur les pointeurs qu'il te faudrait !
    Quand tu fais x[i], tu prends le pointeur x - un double* - et tu prends le ième élément après le début. Tu prends l'élément, pas le pointeur vers l'élément. Pour avoir le pointeur, c'est x+i.
    Donc *(x+i), c'est la même chose que x[i]

  13. #13
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    a+=b; est une incrémentation
    a=b; est une affectation, pas une égalité.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

Discussions similaires

  1. [syntaxe] Gerer les variables dans une requete
    Par rastapopulos dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 15/04/2003, 12h53
  2. Syntaxe requete
    Par Chipolata dans le forum Langage SQL
    Réponses: 2
    Dernier message: 28/03/2003, 14h22
  3. [Syntaxe] Action simultanée sur plusieurs élements
    Par FranT dans le forum Composants VCL
    Réponses: 2
    Dernier message: 20/03/2003, 20h20
  4. Syntaxe TASM <-> MASM
    Par LFC dans le forum Assembleur
    Réponses: 3
    Dernier message: 28/02/2003, 15h56
  5. [VB6] [Syntaxe] Fonction renvoyant un tableau d'objets
    Par Troopers dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 18/10/2002, 15h33

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