Dalej•LEKCJA 15 / 22

Wskaźniki

Kurs C · Wyjaśnienie, przykłady, oczekiwany wynik i ćwiczenie.

Wskaźnik przechowuje adres komórki pamięci.

Jak to działa?

&variable daje adres, a *pointer pozwala odczytać lub zmienić zawartość. Nie wolno dereferencjonować nieprawidłowego wskaźnika.

Przykład 1 — poznaj zapis

int number = 42;
int *ptr = &number;
*ptr = 100;
printf("%d\n", number);

Wynik: 100. Zmiana przez wskaźnik wpływa na zmienną.

Przeczytaj kod linijka po linijce

  1. int number = 42;Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
  2. int *ptr = &number;Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
  3. *ptr = 100;Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
Oczekiwany wynik / efektpo uruchomieniu przykładu
100

Przykład 2 — podobny problem, inne dane

Teraz przyjrzyj się drugiemu przykładowi. Zwróć uwagę na to, co zmieniło się w kodzie, a co w wyniku. Spróbuj przewidzieć rezultat przed przeczytaniem odpowiedzi.

int x = 3;
int *p = &x;
*p = 9;
printf("%d\n", x);
Wynik drugiego przykładupo uruchomieniu przykładu
9
Sprawdź, czy rozumiesz

Wróć do pierwszego przykładu, zmień jedną wartość i spróbuj samodzielnie przewidzieć wynik. Następnie uruchom kod i porównaj rezultat. W ten sposób nauczysz się nie tylko przepisywać instrukcje, ale rozumieć ich działanie.

Spróbuj samodzielnie

Utwórz wskaźnik do zmiennej double.

To już koniec tej lekcji.

Jeśli rozumiesz przykład, oznacz lekcję jako ukończoną i przejdź dalej.