Compilerausgabe "non-lvalue in assignment" verstehe ich nicht



  • Hallo,

    die MSDN bietet mir für den Compilererror irgendwie keine brauchbaren Resultate´...

    Ich verstehe nicht, was das Problem ist bei diesem Code:

    int Add1=0;
    int Add2=0;
    int AddErgebnis=0;
    
    int main()
    {
    
        ...
        cin>>Add1;
        cin>>Add2;
        ...
        Add1+Add2=AddErgebnis;
        ...
        cout<<"Das Ergebnis von "<<Add1<<" und "<<Add2<<" ist "<<AddErgebnis<<"\n";
        ...
    
        cin.get();
        return 0;
    }
    


  • AddErgebnis = Add1 + Add2;
    

    übersetze es doch einfach dann wirst du den sinn schon erkennen 😉



  • miller_m schrieb:

    AddErgebnis = Add1 + Add2;
    

    übersetze es doch einfach dann wirst du den sinn schon erkennen 😉

    hmm, joah, ich wollte den Inhalt der Variablen Add11 und Add2 zu dem Inhalt der Variablen AddErgebnis machen 😕



  • macht er doch



  • Hi NewProggie!

    Wenn du Werte in C++ an Variablen zuweisen möchtest, musst du auf die L-Werte und R-Werte achten. L und R stehen für links und rechts. Es können nur R-Werte an L-Werte zugewiesen werden.

    AddErgebnis = Add1 + Add2; // Richtig: R-Werte werden an den L-Wert zugewiesen!
    Add1 + Add2 = AddErgebnis; // Falsch: Ein R-Wert kann nicht an zwei addierte L-Werte zugewiesen werden!
    

    Also das ist ein Anfängerfehler! Das wird schon!

    Mit freundlichen Grüßen

    Stormrage



  • Stormrage schrieb:

    Hi NewProggie!

    Wenn du Werte in C++ an Variablen zuweisen möchtest, musst du auf die L-Werte und R-Werte achten. L und R stehen für links und rechts. Es können nur R-Werte an L-Werte zugewiesen werden.

    AddErgebnis = Add1 + Add2; // Richtig: R-Werte werden an den L-Wert zugewiesen!
    Add1 + Add2 = AddErgebnis; // Falsch: Ein R-Wert kann nicht an zwei addierte L-Werte zugewiesen werden!
    

    Also das ist ein Anfängerfehler! Das wird schon!

    Mit freundlichen Grüßen

    Stormrage

    Klasse!

    Vielen Dank


Anmelden zum Antworten