Do podstawowych operatorów arytmetycznych należą:
Przypisanie polega na nadaniu wartości dla zmiennej znajdującej się po lewej stronie, wartości znajdującej się po stronie prawej. Dla takiej zmiennej można bezpośrednio nadać wartość, przekazać wartość z innej zmiennej lub wartość może zostać nadana poprzez wcześniejsze wykonanie pewnych operacji. Podstawowym operatorem przypisania jest "=".
int a = 45; //przypisanie do zmienne "a" liczby 45, od tej chwili zmienna "a" przechowuje tą liczbę
int b = a; //przypisanie do zmiennej "b" wartości zmiennej "a", od tej chwili zmienna "b" ma taką
//samą wartość co zmienna "a".
int c = b * (a - b); //w tym przypadku wykonane zostaną operacje po prawej stronie operatora
// a następnie ten wynik zostanie przypisany do zmiennej "c" (czyli 0)
Częstą operacją w języku C++ jest zwiększenie lub zmniejszenie wartości zmiennej całkowitej o 1. Tą operację nazywamy odpowiednio inkrementacją i dekrementacją. Przeanalizujmy przykład:
int c = 1;
c = c + 1; //zwiększenie wartości zmiennej "c" o 1, od tej pory ta zmienna ma wartość 2 - sposób pierwszy
c += 1; //ponowne zwiększenie zmiennej "c" o 1, zmienna ta przyjmuje wartość 3 - drugi sposób inkrementacji
c ++; // najkrótszy i najczęstszy sposób inkrementujący zmienną "c". Od tej pory zmienna ta osiąga wartość 4
c --; // i analogicznie dekrementujemy naszą zmienną, a więc zmniejszamy wartość zmiennej o 1.
Pamiętaj!!! Inkrementacja i dekrementacja działa tylko na zmiennych typu całkowitego.
Jak już wspomniałem, najczęściej używaną opcją jest inkrementacja i dekrementacja zastosowana w trzecim przykładzie. Ten rodzaj inkrementacji dzielimy na dwa rodzaje: przyrostkowa (c++; c--;) oraz przedrostkowa (++c; --c;). Na pierwszy rzut oka, efekt działania będzie taki sam. Różnica jednak jest w priorytecie przy zastosowaniu z operatorem przypisania. Prześledźmy przykład:
int a, b;
a = 1;
b = a ++; // w tym przypadku najpierw zostanie przypisana wartość do zmiennej "b",
// a następnie zwiększona wartość zmiennej "a" o 1, czyli od tej chwili
// " a = 2 " natomiast " b =1 "
a = 1;
b = ++a; // w tym przypadku najpierw zadziała operator inkrementacji, a później przypisania
// a więc, najpierw zwiększamy "a", a następnie ten wynik przypisujemy do "b",
//z tego wynika, że " a = 2 " i " b = 2 ".
Operację przypisania połączoną z pewną operacją matematyczną na wartości zmiennej można przedstawić w następujący sposób:
zmienna [operator matematyczny][=] wartość;
Aby lepiej zrozumieć powyższą notację prześledźmy przykłady:
int a = 3;
a += 4; //działanie to oznacza, że do aktualnej wartości zmiennej "a" dodajemy 4, czyli nowa wartość tej zmiennej wynosi 7
int a = 3;
a -= 4; //działanie to oznacza, że od aktualnej wartości zmiennej "a" odejmujemy 4, czyli nowa wartość tej zmiennej wynosi -1
int a = 3;
a %= 2; //działanie to oznacza, że pod zmienną "a" zostanie zapisany wynik reszty z dzielenie aktualnej wartości tej danej
// i 2, czyli 1
int a = 3;
a *= 4; //działanie to oznacza, że aktualna wartość zmiennej "a" zostanie pomnożona przez 4 i wynik zostanie nadpisany w tej zmiennej
//wynikiem tym jest liczba 12