• Nie Znaleziono Wyników

Modyfikując parametry w obrębie ciała funkcji oryginalne zmienne nie zmienią się

N/A
N/A
Protected

Academic year: 2021

Share "Modyfikując parametry w obrębie ciała funkcji oryginalne zmienne nie zmienią się"

Copied!
2
0
0

Pełen tekst

(1)

Ćwiczenia 7

Podstawy programowania - Wskaźniki

Wskaźnik(ang. pointer) – typ zmiennej odpowiedzialnej za przechowywanie adresu do innej zmiennej (innego miejsca w pamięci) w obrębie naszej aplikacji.

Wskaźnik może wskazywać na jakąś zmienną, strukturę, tablicę a nawet funkcję. Oto podstawowe operatory niezbędne do operowania wskaźnikami:

* – operator wyłuskania wartości zmiennej, na którą wskazuje wskaźnik (wyciąga wartość ze wskaźnika)

& – operator pobrania adresu danej zmiennej, tablicy, struktury itp. (pobiera adres zmiennej)

W języku C++ możemy do funkcji przekazać dowolną ilość parametrów. Modyfikując parametry w obrębie ciała funkcji oryginalne zmienne nie zmienią się. Przekazując zmienne do funkcji poprzez wartość (czyli w sposób standardowy), tworzymy wewnątrz funkcji ich kopię! Co z tego faktu wynika? Każda funkcja w C++ może zmodyfikować maksymalnie jedną zmienną, za pomocą wartości zwracanej return.

Co zrobić, aby jedną funkcją zmodyfikować 3 zmienne na raz? Nie można użyć rozkazu return 3 razy, ponieważ każda funkcja zwraca tylko jedną wartość. W tej sytuacji trzeba skorzystać ze wskaźników. Jeżeli przekażemy do funkcji jako jej argument wskaźnik, wtedy operacje na wskaźniku zmieniają zmienną oryginalną z poza ciała funkcji – nie operujemy na kopii zmiennej. Dzięki temu, nawet jeżeli funkcja jest typu void i nic nie zwraca, możemy modyfikować wiele zmiennych z poza ciała funkcji:

Źródło: http://www.p-programowanie.pl/cpp/wskazniki/

(2)

Zadania:

1. Napisz funkcję, która posortuje liczby zapisane w zmiennych a, b I c w rosnącej kolejności.

Użyj wskaźników. Przetestuj jej działanie.

2. Napisz program definiujący zmienną typu int oraz wskaźnik do tej zmiennej. Program powinien wczytać z klawiatury wartość i podstawić ją do zmiennej stosując wskaźnik.

3. Napisz program definiujący strukturę Punkt zawierającą pola X i Y (współrzędne punktu).

Stwórz zmienną tego typu oraz wskaźnik do tej zmiennej. Wczytaj z klawiatury wartości pól tej zmiennej I przypisz je do niej z użyciem wskaźnika. (Użyj operatora -> zamiast . w celu dostępu do pól struktury przy użyciu wskaźnika)

Cytaty

Powiązane dokumenty

Wartość największa funkcji na wykresie to „y” najwyżej położonego punktu na wykresie.. Wartość najmniejsza funkcji na wykresie to „y” najniżej położonego punktu

Referencja jest drugą nazwą, „przezwiskiem” - nie przezwiskiem klasy, ale danego egzemplarza jej obiektu. Wysyłając taki egzemplarz obiektu do funkcji na zasadzie

Wydaje się, że podobną funkcję w filmie pełnią materiały, które pojawiają się już po zakończeniu właściwej Symfonii, celowo oddzielone od niej napisami końcowymi. W

Definicja granicy funkcji (wg Heinego). a) powyższe definicje granicy funkcji są równoważne, b) rachunek granic skończonych jak dla granic ciągów, c) symbole nieoznaczone jak

Ustawodawca przyjmuje jednak fikcję prawną (działającą ex tunc), że po upływie okresu próby w razie nieodwołania warunkowego zwolnienia, czego jednak nie

Przedział (−∞, 2⟩ jest zbiorem wartości

Analityk bankowy interesuje się prognozowaniem podstawowej bankowej stopy procentowej na podstawie modelu, w którym zmienną objaśniającą (niezależną) jest stopa procentowa Funduszu

FLOreS is the first toolbox designed to allow designing fractional order controllers using the industry standard loop shaping method.. This allows for intuitive graphical approach