[c++]Incremento prefisso e postfisso
Ciao a tutti,
Non riesco prorpio a capire cosa accade con gli operatori unari di incremento..
Ora partiamo dal fatto che gli operatori unari sono associativi a destra..
Voglio farvi notare alcuni casi..
Nel primo caso essendo operatore associativo a destra dovrei prima assegnare j a k e poi incrementare.Nel secondo caso parto sempre da destra con $ j++ $ dovrei incrementare ed assegnare a k..
Quello che ho sempre saputo é che il primo caso di traduce in
Nel secondo caso invece
Con questa associatività non mi torna piu niente..
In questo caso che succede??
Mi sta mandando in confusione sta cosa..
Grazie
Non riesco prorpio a capire cosa accade con gli operatori unari di incremento..
Ora partiamo dal fatto che gli operatori unari sono associativi a destra..
Voglio farvi notare alcuni casi..
int j=0; int k; k=++j;
int j=0; int k; k=j++;
Nel primo caso essendo operatore associativo a destra dovrei prima assegnare j a k e poi incrementare.Nel secondo caso parto sempre da destra con $ j++ $ dovrei incrementare ed assegnare a k..
Quello che ho sempre saputo é che il primo caso di traduce in
j=j+1; k=j;
Nel secondo caso invece
k=j; j=j+1;
Con questa associatività non mi torna piu niente..
int j=0; int k; k=++j++;
In questo caso che succede??
Mi sta mandando in confusione sta cosa..

Grazie
Risposte
Provo a rispondermi da solo rigurado l'ultimo caso..
Quella dovrebbe essere una situazione d'errore risolvibile in questo modo.
giusto??
Credo di aver capito il senso ,mi confonde però l'associatività a destra..
Quella dovrebbe essere una situazione d'errore risolvibile in questo modo.
k=(++j)++;
giusto??
Credo di aver capito il senso ,mi confonde però l'associatività a destra..
Ti suggerisco di non complicarti la vista senza ragione. Non conviene usare troppe operazioni di questo tipo senza ragione. Al massimo una.