Deklaracja (często nazywana prototypem) funkcji opisuje sygnaturę funkcji, czyli to, jaki typ zwraca oraz jakie typy mają jej parametry. W typowej składni wielu języków kompilowanych (np. rodziny C/C++) występują dwa kluczowe miejsca, które trzeba odczytać:
- Typ przed nazwą funkcji – to informacja, jakiego typu wartość funkcja zwraca do miejsca wywołania. Jeśli jest to typ całkowity, funkcja zwraca liczbę całkowitą.
- Typy przy parametrach (w nawiasach) – to informacja, jakie dane należy przekazać do funkcji. Jeśli przy obu parametrach występuje typ całkowity, to oba argumenty wejściowe muszą być całkowite.
Dlatego opis "zwraca wartość typu całkowitego przy czym oba argumenty wejściowe są typu całkowitego" odpowiada sytuacji, w której w deklaracji wskazano typ całkowity jako wynik oraz dwa parametry o typie całkowitym.
Pozostałe odpowiedzi są typowymi pułapkami:
- Odpowiedzi mówiące o typie rzeczywistym przy którymś argumencie są błędne, jeśli w deklaracji oba parametry są oznaczone jako całkowite. To częsty błąd wynikający z pobieżnego skanowania zapisu.
- Odpowiedzi "nie zwraca wartości" odpowiadają przypadkowi, gdy w deklaracji widnieje typ wskazujący brak wyniku (np. w wielu językach słowo-klucz oznaczające brak wartości zwracanej). Jeśli jednak w deklaracji podano typ całkowity jako wynik, to funkcja zwraca wartość.
Wskazówka egzaminacyjna: czytając prototyp, najpierw znajdź typ przed nazwą (wynik), a dopiero potem odczytaj listę parametrów (wejście). To ogranicza pomyłki między typem zwracanym a typami argumentów.