• Kurs C++ - strona główna
  • Kurs C++ - kontakt z autorem
  • Kurs C++ - mapa witryny
  • Kurs C++ - prawa autorskie
  • Kurs C++ - Kanał RSS
Informatyka krok po kroku
Użytkownik niezalogowany

Witaj nieznajomy

Reklamy
Randki

Lekcja 8

Operatory część druga - operatory inkrementacji i dekrementacji, relacji oraz operatory logiczne

utworzono: 2004-09-19 zmodyfikowano: 2004-09-19 Autor: mgr inż. Marcin Nabiałek

Wprowadzenie

W poprzedniej lekcji przedstawiłem Ci podstawowe operatory: operator przypisania, operatory arytmetyczne oraz złożone operatory przypisania. Dzięki tej lekcji poznasz kolejne rodzaje operatorów. Wszystkie przedstawione tutaj operatory są nie mniej przydatne i nie rzadziej używane od tych przedstawionych w poprzedniej lekcji.

Operatory inkrementacji i dekrementacji

Operatory te można nazwać operatorami spokrewnionymi z operatorem przypisania, dodawania i odejmowania, bowiem powodują one zmniejszenie lub zwiększenie wartości zmiennej o 1.

++ zwiększenie wartości o 1, np. i++ to jest to samo co i=i+1
 --  zmniejszenie wartości o 1, np. i-- to jest to samo co i=i-1

Należy jednak zwrócić uwagę, że operatory te można stosować przed i po zmiennej, tzn. liczba++ lub ++liczba. Podobnie jest z operatorem dekrementacji --. Mimo, że działanie operatora w obu przypadkach jest podobne, to nie jest jednak identyczne!

Aby to wyjaśnić, muszę Ci zdradzić, że w języku C/C++ prawie każde wyrażenie zwraca jakąś wartość. Np. operacja 5+6 zwraca liczbę 11, i dzięki temu int liczba=5+6; powoduje przypisanie zmiennej liczba wartości 11.

Operatory ++ i -- również zwracają wartość, z tym tylko, że jeśli operator znajduje się przed zmienną, to zwraca wartość zmiennej po zwiększeniu(zmniejszeniu), a jeśli znajduje się po zmiennej, to zwraca wartość zmiennej przed wykonaniem operacji zwiększenia(zmniejszenia). Jednak wartość zmiennej w obu przypadkach będzie taka sama.

Jeśli nie do końca udało Ci się zrozumieć jaka jest różnica, oto prosty program, który powinien wyjaśnić wszystkie wątpliwości:

#include <iostream>

using namespace std;

int main()
{
  int liczba1;
  int liczba2;
  int liczba3;
  int liczba4;
 
  liczba1=5;
  liczba2=5;
  liczba3=5;
  liczba4=5;
 
  cout <<"Wartosc liczba1++ to "<<liczba1++
       <<" a wartosc zmiennej to "<<liczba1<<endl;
  cout <<"Wartosc ++liczba2 to "<<++liczba2
       <<" a wartosc zmiennej to "<<liczba2<<endl;
  cout <<"Wartosc liczba3-- to "<<liczba3--
       <<" a wartosc zmiennej to "<<liczba3<<endl;
  cout <<"Wartosc --liczba4 to "<<--liczba4
       <<" a wartosc zmiennej to "<<liczba4<<endl;
       
  cout <<endl<<"Nacisnij ENTER aby zakonczyc"<<endl;
  getchar();
  return 0;
}
program nr 8.1

dodajdo

1 | 2 | 3 | 4 | > | |>

Użytkowanie Serwisu oznacza zgodę na wykorzystywanie plików cookie. Szczegółowe informacje