Dalej•LEKCJA 20 / 22

Wskaźnik do struktury

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

Operator -> skraca zapis dostępu do pola przez wskaźnik do struktury.

Cel lekcji

Poznać zagadnienie „Wskaźnik do struktury”, zrozumieć przykład i umieć zastosować podobny zapis we własnym programie.

Wyjaśnienie krok po kroku

Jest odpowiednikiem (*ptr).pole.

Najpierw przeanalizuj kod bez uruchamiania. Zwróć uwagę, jakie dane wykorzystuje program, co z nimi robi i skąd bierze się wynik pokazany pod przykładem.

Praktyczny przykład

Gdzie zobaczysz efekt: Konsola programu C

Gdzie wkleić kod? To fragment ćwiczeniowy: instrukcje wykonawcze wstaw do main(), a deklaracje klas lub funkcji umieść w odpowiednim miejscu pliku. Uzupełnij wymagane importy i nagłówki.

struct Point { int x; int y; };
struct Point p = {3, 4};
struct Point *ptr = &p;
printf("%d\n", ptr->x);

Przeczytaj kod linijka po linijce

  1. struct Point { int x; int y; };Definiujemy nowy typ obiektu lub umowę dotyczącą jego zachowania.
  2. struct Point p = {3, 4};Definiujemy nowy typ obiektu lub umowę dotyczącą jego zachowania.
  3. struct Point *ptr = &p;Definiujemy nowy typ obiektu lub umowę dotyczącą jego zachowania.
Oczekiwany wynik / efektpo uruchomieniu przykładu
3

Jak utrwalić tę umiejętność?

Przepisz kod samodzielnie. Następnie zmień jedną wartość lub jedną instrukcję i spróbuj przewidzieć efekt. Dopiero potem uruchom zmienioną wersję. Jeśli wynik jest inny niż oczekiwany, porównaj kolejne linie.

Spróbuj samodzielnie

Zmień pole y przez wskaźnik.

To już koniec tej lekcji.

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