Video: Matrici : Introduzione e Primi Esempi 2024
Tutti gli operatori eseguono alcune funzioni definite in C ++. Inoltre, ogni operatore ha una precedenza - un ordine specificato in cui vengono valutate le espressioni. Si consideri, ad esempio, in che modo la precedenza influisce sulla risoluzione del seguente problema:
int var = 2 * 3 + 1;
Se l'aggiunta viene eseguita prima della moltiplicazione, il valore dell'espressione è 2 volte 4 o 8. Se la moltiplicazione viene eseguita per prima, il valore è 6 più 1 o 7.
La precedenza degli operatori determina chi va per primo. Il concetto di precedenza è presente anche in aritmetica. Il C ++ aderisce alla comune precedenza aritmetica. Pertanto, la moltiplicazione ha una precedenza più alta rispetto all'aggiunta, quindi il risultato è 7.
Quindi cosa succede quando due operatori della stessa precedenza appaiono nella stessa espressione? Ad esempio:
int var = 8/4/2;
Quando gli operatori con la stessa precedenza appaiono nella stessa espressione, vengono valutati da sinistra a destra (la stessa regola applicata in aritmetica). Quindi, in questo frammento di codice, var è uguale a 8 diviso per 4 (che è 2) diviso per 2 (che è 1).
L'espressione
x / 100 + 32
divide x per 100 prima di aggiungere 32. Ma cosa succederebbe se il programmatore volesse dividere x per 100 più 32? Il programmatore può cambiare la precedenza raggruppando le espressioni tra parentesi (sfumature di algebra!), Come segue:
x / (100 + 32)
Questa espressione ha lo stesso effetto della divisione di x per 132. L'espressione originale
x / 100 + 32
è identico all'espressione
(x / 100) + 32