Frage zur Syntax



  • Hi,

    int Punkte, Zwischenwert;
    Punkte = 10;
    Zwischenwert = Punkte + 20;
    Punkte = Zwischenwert
    

    ;
    Was bedeutet die Zeile Punkte = Zwischenwert?

    (P.S. Das steht in einem C++-Buch für Spieleprogrammierer)

    Freue mich auf Eure Antworten



  • 1. Punkte und Zwischenwert sind nun vom typ int
    2.Du weist dem int Punkte den int wert 10 zu
    3.Du sagst das int Zwischenwert jetzt int Punkte + 20 sind also int Zwi. = 30
    4.Du sagst int Zwischenwert entspricht nun int Punkte  d.h. Zwischenwert ist nun das gleiche wie Punkte
    

    Das Ergebnis ist also

    int Zwichenwert = 30;
    int Punkte = 30;
    

    wenn ich das so richtig deute



  • Das ist, genau wie die beiden vorigen Zeilen, eine Zuweisung - du schreibst in die Variable "Punkte" den Wert, der gerade in "Zwischenwert" steht.



  • '=' ist eine Zuweisung. Vergleiche werden mit '==' gemacht. Am Anfang ein wenig merkwürdig, aber man gewöhnt sich schnell daran.

    Ist btw. bei den meisten Programmiersprachen so. Es gibt ein paar wenige, wo für die Zuweisung ':=' benutzt wird und für Vergleiche '='.



  • Danke ihr beiden 🙂



  • Die letzte Zeile könnte man doch eig. weglassen da schon in der vorletzten zeile beides nun 30 ist 😋



  • 7xCore schrieb:

    Die letzte Zeile könnte man doch eig. weglassen da schon in der vorletzten zeile beides nun 30 ist 😋

    Ja, das steht in einem Buch über C++ für Spieleprogrammierer. ^^
    Eigentlich hat mich nur die letzte Zeile irritiert.

    Aber Danke für die Antworten 🙂



  • 7xCore schrieb:

    Die letzte Zeile könnte man doch eig. weglassen da schon in der vorletzten zeile beides nun 30 ist 😋

    Nein, ist es nicht - die zweite Zuweisung ändert nur den Inhalt von "Zwischenwert".



  • 7xCore schrieb:

    Die letzte Zeile könnte man doch eig. weglassen da schon in der vorletzten zeile beides nun 30 ist 😋

    Ne. Warum sollte das sein?
    Punkte ist dort 10.



  • Nein, ist es nicht - die zweite Zuweisung ändert nur den Inhalt von "Zwischenwert".

    Ja genau das ist doch das ziel oder verhau ich mich gerade völlig ? 😃

    int a ,b;
    
    a = 10;
    
    b = a + 20;
    
    cout << b;
    

    output :

    30
    

    ?

    edit: Und wegen sowas hab ich extra ein neues vc projekt angefangen 🙄 :p



  • Häng mal noch ein "cout<<a;" dahinter, dann siehst du den Unterschied 😉

    7xCore schrieb:

    edit: Und wegen sowas hab ich extra ein neues vc projekt angefangen 🙄 :p

    Für solche Mini-Tests kannst du doch auch Online-Compiler wie http://ideone.com/ verwenden.



  • Für solche Mini-Tests kannst du doch auch Online-Compiler wie http://ideone.com/ verwenden.

    wow dankeschön

    Häng mal noch ein "cout<<a;" dahinter, dann siehst du den Unterschied

    Oh Gott wie ****** 😡
    Das war jetzt schei* muss mich entschuldigen war jetzt nicht so der schlauste Beitrag 👎


Anmelden zum Antworten