Darmowe Forum
Kwiecień 19, 2024, 14:20:24 *
Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji
Aktualności: Forum zostało uruchomione!
 
   Strona główna   Pomoc Zaloguj się Rejestracja  
Strony: [1]
  Drukuj  
Autor Wątek: Post i pre inkrementacja  (Przeczytany 19090 razy)
admin
Administrator
Ekspert
*****
Wiadomości: 821


Email
« : Październik 19, 2011, 07:59:27 »

Zapis a++ oznacza post inkrementację, jeżeli jest zapisany samodzielnie jest zwykłym zwiększeniem a o 1. Jednak jeżeli chcielibyśmy napisać:
int a=2;
a=a++;
cout<<a;

to wyświetlony zostanie wynik 2; bo ten zapis mówi: najpierw użyj potem dodaj;

Zapis w postaci:

int a=2;
a=++a;
cout<<a;

to wyświetlony zostanie wynik 3; bo ten zapis mówi: najpierw dodaj potem użyj;

Postinkrementacja w C++ to bardzo niebezpieczny operator, głównie dlatego, że jego działanie jest sprzeczne z intuicją.

Otóż, wbrew temu co można by oczekiwać, postinkrementacja ma w wyrażeniu miejsce PO wszelkich operacjach obliczenia wartości wyrażenia, ale PRZED wykonaniem przypisań.
Przykład jaka wartość zostanie wyświetlona po realizacji polecenia b += a++.

« Ostatnia zmiana: Październik 19, 2011, 08:24:46 wysłane przez admin » Zapisane
Strony: [1]
  Drukuj  
 
Skocz do:  

Powered by SMF 1.1.11 | SMF © 2006-2008, Simple Machines LLC | Sitemap

Polityka cookies
Darmowe Fora | Darmowe Forum

th wataha-wilkow-nocy zostangwiazda life bross-