ID: 2832 OOP - Podstawy Średnie

Źródło: Arkusze CKE

Przykład wywołania funkcji zamien w języku C++ może wyglądać w następujący sposób:
void zamien(int *a, int *b) {
int tmp;
tmp = *a;
*a = *b;
*b = tmp;
}

Warianty odpowiedzi

  1. A

    zamien(12, 34)

  2. B

    zamien(&a, &b); // a, b - zmienne całkowite

  3. C

    zamien(*a, *b); // a, b - zmienne całkowite

  4. D

    zamien(m, n); // m, n - zmienne całkowite

Wyjaśnienie

Spójrz na nagłówek funkcji. Gwiazdki przy typach int (int *a, int *b) oznaczają, że funkcja przyjmuje wskaźniki. Spodziewa się zatem adresów pamięci, pod którymi znajdują się zmienne, a nie samych ich wartości.

Żeby przekazać do funkcji adres konkretnej zmiennej, musisz użyć operatora pobrania adresu, czyli ampersanda (&).

Dlatego wywołanie musi wyglądać tak: zamien(&a, &b). W ten sposób funkcja dostaje bezpośredni dostęp do oryginalnych zmiennych i może zmodyfikować ich wartość w pamięci komputera.

Sprawdź się w praktyce

Rozwiąż pełny test próbny INF.04 albo wylosuj pojedyncze pytanie na szybką powtórkę.

Podobne pytania — OOP - Podstawy