Operazioni Aritmetiche

Operazioni aritmetiche includono operazioni di addizione e moltiplicazione:

Somma delle variabili                      i = j + 2;
Differenza delle variabili                 i = j - 3;
Modifica del segno                         x = -x;
Prodotto delle variabili                   z = 3 * x;
Divisione quoziente                        i = j / 5;
Il resto della divisione                   minutes = time % 60;
Aggiunge 1 al valore della variabile       i++;
Aggiunge 1 al valore della variabile       ++i;
Sottrae 1 dal valore della variabile       k--;
Sottrae 1 dal valore della variabile       --k;

Le operazioni di incremento e decremento sono applicate solo alle variabili, non possono essere applicate alle costanti. I prefissi incremento (++i) e decremento (--k) vengono applicati a destra variabile, giusto prima che questa variabile venga utilizzata in un'espressione.

Post-incremento (i++) e post-decremento (k--) vengono applicati alla variabile, giusto dopo che questa vnga utilizzata in un'espressione.

Avviso importante

int i=5;
int k = i++ + ++i;

Problemi computazionali possono verificarsi durante lo spostamento della suddetta espressione da un ambiente di programmazione ad un altro (per esempio, da Borland C++ ad MQL5). In generale, l'ordine dei calcoli dipende dall'implementazione del compilatore. In pratica, ci sono due modi per implementare il post-decremento (e post-incremento):

  1. Il post-decremento (ed il post-incremento) viene applicato alla variabile dopo il calcolo dell'intera espressione.
  2. Il post-decremento (post-incremento) viene applicato alla variabile immediatamente all'operazione.

Attualmente per i calcoli è implementato in MQL5 il primo metodo di post-decremento (e di post-incremento). Ma anche conoscendo questa sua peculiarità, non è consigliabile sperimentare con il suo uso.

Esempi:

int a=3;
a++;            // espressione valida
int b=(a++)*3;  // espressione non valida

Vedi anche

Regole di Precedenza