sama zmienna wskaznik wskazuje na poczatek bloku 5 intow.
po takim czyms mozna sie poruszac jak po zwyklej tablicy tj. wskanzik[0], wskaznik[1] itd.
Cytat z Szkoła Programowania Jezyk C++ S.Prata.
Arytmetyka wskaźników
C++ pozwala dodawać do wskaźników liczby całkowite. Wynikiem dodania jedynki jest pierwotny adres przesunięty o tyle bajtów, ile ma wskazywany obiekt. Można też odejmować od wskaźników liczby całkowite oraz odejmować wskaźniki od siebie. Ostatnia operacja, zwracająca liczbę całkowitą, ma sens tylko wtedy, gdy oba odejmowane wskaźniki należą do tej samej tablicy (dopuszczalne jest też wskazywanie jednego elementu za końcem tablicy). W ten sposób oblicza się odstęp między dwoma elementami.
Zapis tablicowy i zapis wskaźnikowy
Użycie zapisu tablicowego, z nawiasami kwadratowymi jest równoważne dereferencji wskaźnika:
tacos[O] oznacza *tacos , czyli wartość znajdującą się pod adresem tacos
tacos[3] oznacza *(tacos+3), czyli wartość znajduj ącą się pod adresem tacos+3
Dotyczy to w takim samym stopniu nazw tablic, jak i zmiennych wskaźnikowych, więc zarówno do wskaźników, jak i do nazw tablic można na równi stosować zapis wskaźnikowy oraz zapis tablicowy.
Oto kilka przykładów:
int *pt = new int [10]; // pt wskazuje blok 10 liczb int
*pt = 5; // ustawienie elementu zerowego na 5
pt[O] = 6; // zmiana wartości elementu zerowego na 6
pt[9] = 44; // ustawienie dziesiątego elementu (numer 9) na 44
int coats[10];
*(coats + 4) = 12; // ustawienie coats{4} na 12