Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. Wskaźnik w C++

Wskaźnik w C++

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Wskaźnik to zmienna, która przechowuje adres pamięci innej zmiennej. W deklaracji wskaźnika używa się znaku * przy typie lub nazwie zmiennej.

Składnia

typ *nazwa;

Przykład:

double *x;

Oznacza to, że x jest wskaźnikiem na wartość typu double, czyli może przechowywać adres zmiennej rzeczywistej typu double.

Przykład użycia

double liczba = 3.14;
double *x = &liczba;

cout << x;   // adres zmiennej liczba
cout << *x;  // wartość zmiennej liczba, czyli 3.14

W tym przykładzie:

  • &liczba oznacza adres zmiennej liczba,
  • x przechowuje ten adres,
  • *x oznacza wartość znajdującą się pod adresem zapisanym w x.

Ważne rozróżnienie

W deklaracji:

double *x;

znak * oznacza, że deklarowana zmienna jest wskaźnikiem.

W wyrażeniu:

*x

znak * oznacza odwołanie do wartości wskazywanej przez wskaźnik, czyli dereferencję.

Dobra praktyka

Nie należy zostawiać wskaźnika bez określonej wartości. Jeśli wskaźnik na początku nie wskazuje na żadną zmienną, warto przypisać mu nullptr:

double *x = nullptr;

Zapobiega to przypadkowemu użyciu niezainicjalizowanego adresu pamięci.