Was ist die Ausführungsstrategie, die die C++ - Laufzeit verwendet, um die Ausgabe 4545
zu erzeugen, wenn der unten angegebene Code ausgeführt wird.Wie werden die Prä- und Post-Inkrement/Dekrement-Operatoren in C++ ausgewertet, wenn sie wiederholt in einer einzigen Cout-Anweisung vorkommen?
#include <iostream>
using namespace std;
int main()
{
int a=5;
cout <<a++ <<++a <<a-- <<--a;
}
erwartete ich die Ausgabe 5444
Bitte helfen Sie mir zu verstehen, wie die C++ Runtime-Code verarbeitet.
Es ist undefiniertes Verhalten. –
Ist dies Teil eines indischen Schullehrplans oder so? Warum sehen wir das fast jeden Tag? –
Ihr Programm ruft UB auf. Alles kann passieren. Compiler kann alles tun. Es könnte Ihre Festplatte formatieren, Ihre Freundin schwanger machen, was auch immer sie mag !!! – Destructor