Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Cosa cambia tra a-- e --a?
Forum - C/C++ - Cosa cambia tra a-- e --a?

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
pino.99 (Normal User)
Newbie


Messaggi: 8
Iscritto: 09/03/2016

Segnala al moderatore
Postato alle 10:00
Venerdì, 01/04/2016
Ragazzi mi è capitato di leggere un codice con scritto --a, cosa cambia a--?
ho provato a fare sti due programmi
Codice sorgente - presumibilmente C/C++

  1. int a=2;
  2. --a;
  3. cout << a;
  4. //output 1



e poi

Codice sorgente - presumibilmente C/C++

  1. int a=2;
  2. a--;
  3. cout << a;
  4. //output 1



cosa cambia? quando si usa --a?

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6402
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 10:19
Venerdì, 01/04/2016
Cerca

preincremento/predecremento

postincremento/postdecremento

E prova ad eseguire

cout << --a;

e

cout << a--;

Ultima modifica effettuata da nessuno il 01/04/2016 alle 10:20


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 20:12
Domenica, 03/04/2016
int  a=1;
cout<<--a+2 //output:1
cout>>2+a++ //output: 3 in seguito la variabile a viene incrementata fino a 3

PM Quote
Avatar
Roby94 (Member)
Guru


Messaggi: 1170
Iscritto: 28/12/2009

Segnala al moderatore
Postato alle 1:10
Lunedì, 04/04/2016
Testo quotato

Postato originariamente da alexxx99:

int  a=1;
cout<<--a+2 //output:1
cout>>2+a++ //output: 3 in seguito la variabile a viene incrementata fino a 3


Alex ricontrolla tutto quello che hai scritto :asd:

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6402
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 8:28
Lunedì, 04/04/2016
Testo quotato

Postato originariamente da alexxx99:

int  a=1;
cout<<--a+2 //output:1
cout>>2+a++ //output: 3 in seguito la variabile a viene incrementata fino a 3



Ma lo hai provato o stai solo immaginando?

Ultima modifica effettuata da nessuno il 04/04/2016 alle 8:46


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Roby94 (Member)
Guru


Messaggi: 1170
Iscritto: 28/12/2009

Segnala al moderatore
Postato alle 12:21
Lunedì, 04/04/2016
Testo quotato

Postato originariamente da nessuno:
Ma lo hai provato o stai solo immaginando?


Direi immaginando :)

PM Quote
Avatar
archemi (Normal User)
Pro


Messaggi: 70
Iscritto: 08/01/2014

Segnala al moderatore
Postato alle 17:16
Lunedì, 04/04/2016
int  a=1;
cout<<--a+2 << endl;
cout<<2+a++ << endl;

hai invertito << con >>

comunque per me l'esempio che spiega il tutto in modo lampante è:
Codice sorgente - presumibilmente C++

  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main()
  5. {
  6.     int a=1;
  7.     int b=1;
  8.     int risultato = 0;
  9.  
  10.     risultato = a++;
  11.     cout<< "a: " << a << " risultato: " << risultato << endl;
  12.  
  13.     risultato = ++b;
  14.     cout<< "b: " << b << " risultato: " << risultato << endl;
  15.  
  16.     return 0;
  17. }



l'output è come ci si aspetta:
a: 2 risultato: 1
b: 2 risultato: 2

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 17:26
Martedì, 05/04/2016
Chiedo scusa per la confusione creata... :(
In ogni caso intendevo:
-Preincremento/predecremento:
Codice sorgente - presumibilmente C/C++

  1. int a=1
  2. cout<<--a+2 //output: 2


-Postdecremento/postdecremento:
Codice sorgente - presumibilmente C/C++

  1. int a=1
  2. cout<<2+a++ //output: 3, inseguito il valore di a viene incrementato di 1 e quindi assume il valore di 2.


Ultima modifica effettuata da il 05/04/2016 alle 17:29
PM Quote
Avatar
Roby94 (Member)
Guru


Messaggi: 1170
Iscritto: 28/12/2009

Segnala al moderatore
Postato alle 17:30
Martedì, 05/04/2016
Perché aggiungere un +2 per fare solo confusione?

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo