Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe Algorytmy i podstawy informatyki

Element zadeklarowany w języku C++ double *x; to

A. zmienna rzeczywista.
Źle. Zmienną rzeczywistą byłoby double x;; gwiazdka zmienia ją we wskaźnik.
B. wskaźnik.
Dobrze. Gwiazdka przed nazwą tworzy wskaźnik, czyli zmienną przechowującą adres wartości typu double.
C. parametr formalny typu rzeczywistego.
Źle. Parametr formalny stoi w nawiasie nagłówka funkcji, a tu jest samodzielna deklaracja zmiennej.
D. zmienna całkowita.
Źle. Typ całkowity to int, a gwiazdka i tak czyni z x wskaźnik.

Opracowane na podstawie zadania CKE, wrzesień 2014 (arkusz E.14-X-14.08): W arkuszu CKE deklaracja ma postać double x*; - to niepoprawna składnia C++. Poprawiono na double *x;.

Gwiazdka przy nazwie w deklaracji oznacza wskaźnik, więc double *x; tworzy zmienną x, która przechowuje adres w pamięci, pod którym leży wartość typu double. Sam wskaźnik nie jest liczbą rzeczywistą, tylko „drogowskazem” do niej.

Przykład użycia: double a = 2.5; double *x = &a; - operator & pobiera adres zmiennej a, a zapis *x odczytuje wartość spod tego adresu (tu 2.5). Do zapamiętania: w deklaracji gwiazdka stoi przed nazwą zmiennej (double *x), a zapis z gwiazdką za nazwą jest błędem składni. Wskaźniki służą między innymi do dynamicznej alokacji pamięci i przekazywania dużych danych do funkcji bez kopiowania.

Najwięcej osób wybiera zmienną rzeczywistą, bo w deklaracji widać typ double. Ten typ mówi jednak tylko, na jakie dane wskaźnik pokazuje. O tym, czym jest sama zmienna x, decyduje gwiazdka: bez niej (double x;) byłaby to zwykła zmienna rzeczywista.

Zmienna całkowita nie pasuje z dwóch powodów: typem całkowitym jest int, a nie double, a do tego gwiazdka i tak zmienia zmienną we wskaźnik.

Parametr formalny to zmienna zapisana w nawiasie nagłówka funkcji, na przykład w void f(double y). Deklaracja z zadania stoi samodzielnie i kończy się średnikiem, więc jest zwykłą deklaracją zmiennej, a nie częścią nagłówka funkcji. Gwiazdka przed nazwą przesądza, że jest to wskaźnik na wartość typu double. Zanim się go użyje, trzeba mu przypisać adres istniejącej zmiennej.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.