1. Wyrażenia, operatory i funkcje matematyczne

Wyrażenia są formułami, które zawsze dają jakiś wynik, w zasadzie wszystko co staje się wartością, jest w C++ uważane za wyrażenie. Do budowy wyrażeń wykorzystuje się następujące elementy języka:

  1. stałe (np. liczby),
  2. zmienne,
  3. nawiasy okrągłe,
  4. operatory arytmetyczne,
  5. operatory relacji,
  6. operatory logiczne,
  7. funkcje, takie jak np. sin(x).

Tak więc stałe i zmienne są w C++ wyrażeniami i jeśli gdzieś dalej powiemy, że w danej konstrukcji występuje wyrażenie, to trzeba pamiętać, że może ono być na przykład liczbą, napisem czy nazwą zmiennej.

W wyrażeniach operatory działają na operandach (argumentach): wiążą ze sobą stałe, zmienne i - całe wyrażenia ujęte w nawiasy okrągłe. Każdy operand w C++ jest wyrażeniem. W wyniku działania operatora na operandach obliczona zostaje wartość wyrażenia. Mówimy, że operator zwraca wartość obliczonego wyrażenia. 
W języku C++ występują następujące podstawowe typy operatorów:

  1. Operatory arytmetyczne. Są to między innymi dobrze Wam znane operatory dodawania, odejmowania, itp. Dostępne w C++ operatory arytmetyczne opiszemy w następnym podrozdziale.
  2. Operatory logiczne, czyli operatory koniunkcji, alternatywy, negacji itp.  Operatory logiczne zawsze zwracają wartość logiczną (prawdę lub fałsz).
  3. Operatory relacji, podobnie jak operatory logiczne, zwracają zawsze wartość logiczną.
  4. Operatory bitowe. Pozwalają one na wykonywanie operacji bezpośrednio na bitach, czyli najmniejszych niepodzielnych jednostkach pamięci. Każda liczba, tekst, obraz czy dźwięk są pamiętane jako zestawy bitów pogrupowane w bajty. Język C i wywodzące się z niego C++ są często wykorzystywane do bezpośredniego programowania sprzętu, mają więc dość silnie rozwinięte metody operacji na bitach i liczbach zapisanych dwójkowo. 
  5. Operator przecinka. Tak - to nie pomyłka. W C++ przecinek jest także operatorem, a nie tylko służy do oddzielania od siebie zmiennych tego samego typu czy też oddzielania argumentów funkcji. Przecinek może być także wykorzystany do oddzielania od siebie wyrażeń, co powoduje, że wszystkie zostaną obliczone, natomiast tylko ostatnie z nich zostanie wykorzystane jako wartość. I znów stwierdzimy, że jest to skomplikowany i charakterystyczny dla C++ operator, więc nie będziemy się nim dalej zajmowali.
  6. Operatory rzutowania, które stosuje się, by dokonać jawnej konwersji wartości. Operatorów rzutowania w C++ jest kilka, większość z nich nie będzie wykorzystywana w trakcie tego kursu. Najczęściej będziemy stosować konwersję typu.
Poszczególne operatory zostaną omówione w kolejnych podrozdziałach.