• Kurs C++ - strona główna
  • Kurs C++ - kontakt z autorem
  • Kurs C++ - mapa witryny
  • Kurs C++ - prawa autorskie
  • Kurs C++ - Kanał RSS
Informatyka krok po kroku
Użytkownik niezalogowany

Witaj nieznajomy

Reklamy
Randki

Lekcja 27

Wskaźniki (typ wskaźnikowy) - część pierwsza. Adresowanie komórek, operator wyłuskania.

utworzono: 2005-04-12 zmodyfikowano: 2005-04-12 Autor: mgr inż. Marcin Nabiałek

Wprowadzenie

Mam nadzieję, że dzięki poprzedniej lekcji, wiesz już doskonale czym jest referencja. Czas poznać kolejny typ - typ wskaźnikowy.

Wskaźnik podobnie jak referencja jest typem pochodnym. I tu właściwie całe podobieństwo do referencji się kończy. Tak jak referencja jest zagadnieniem w miarę łatwym do zrozumienia, tak typ wskaźnikowy jest do zrozumienia znacznie trudniejszy i sprawia problemy nawet zaawansowanym programistom.

W najbliższych lekcjach przedstawię Ci informacje o wskaźnikach. Chcę jednak, aby utkwiło w Twojej świadomości, że są to tak naprawdę tylko podstawowe informacje dotyczące wskaźników i że jak na razie Twoja wiedza odnośnie wskaźników będzie dość mocno ograniczona.

To wszystko wystarczy Ci przez jakiś czas na poznawanie nowych mechanizmów, a gdy zajdzie już taka potrzeba, wówczas informacje na temat wskaźników zostaną poszerzone.

Jednocześnie chcę Ci uświadomić, że wskaźniki są w języku C++ używane bardzo powszechnie i stosowane we wszystkich większych programach. Dlatego też uczulam Cię na zwracanie uwagi na wszystkie szczegóły i zapamiętanie w zasadzie wszystkiego, co postaram Ci się tu przedstawić.

Zmienne w pamięci operacyjnej

Musisz wiedzieć, że każda zmienna, która jest zadeklarowana w programie zostaje umieszczona w pamięci operacyjnej na czas działania programu.

Pamięć operacyjna to zbiór komórek pamięci. Każda komórka w pamięci ma określone położenie - adres. Adres jest liczbą, która jednoznacznie określa położenie komórki w pamięci.

Każda zmienna, którą deklarujemy w programie jest umieszczana w komórkach pamięci. W zależności, jakiego typu jest ta zmienna, może ona zostać umieszczona w jednej, dwóch lub większej liczbie komórek pamięci. Jednak adres zmiennej pokazuje zawsze na pierwszą komórkę pamięci - tam zaczyna się właśnie nasza zmienna.

Zwróć uwagę na dwa pojęcia - adres komórki i adres zmiennej. Zmienna może zajmować kilka komórek a każda z komórek ma własny adres. Jednak zmienna ma tylko jeden adres, równy adresowi pierwszej komórki pamięci, którą zajmuje.

Na szczęście my w naszych programach nie musimy nigdy podawać konkretnej wartości adresu zmiennej. Gdyby tak było, to okazałoby się, że nasz program działałby tylko w ściśle określonych warunkach, bowiem przecież nie możemy nigdy przewidzieć, czy dana komórka pamięci będzie zajęta czy nie.

Trzeba przecież pamiętać, że oprócz naszego programu, na komputerze mamy system operacyjny z wieloma procesami, a także najprawdopodobniej w tym czasie, na komputerze jest uruchomionych co najmniej kilka dodatkowych programów.

Na szczęście jednak, aż takimi szczegółami nie będziemy się musieli przejmować. Przejdźmy zatem do tego, czym musimy się martwić w naszych programach.

dodajdo

1 | 2 | 3 | 4 | 5 | 6 | > | |>

Użytkowanie Serwisu oznacza zgodę na wykorzystywanie plików cookie. Szczegółowe informacje