Źródło: Arkusze CKE
Błąd kompilacji "incompatible types" może zostać wygenerowany, gdy
Warianty odpowiedzi
-
A
zmiennej typu int została przypisana wartość 243
-
B
funkcja zwraca typ void, a podczas wywołania nie jest przypisana do żadnej zmiennej
-
C
funkcja przyjmuje jako argument całkowitą, a wywołana została z napisem jako parametr
-
D
popełniono błąd podczas deklaracji zmiennej, zastosowano typ, który nie istnieje
Wyjaśnienie
Ten błąd pojawia się w momencie, gdy kompilator oczekuje danych jednego typu, a dostaje coś zupełnie innego.
Wyobraź sobie funkcję jako maszynę, która wymaga wrzucenia cyfry. Jeśli zamiast liczby podasz jej ciąg znaków, kompilator natychmiast zaprotestuje, bo te typy są ze sobą całkowicie niezgodne.
Właśnie o to chodzi w komunikacie incompatible types. Dzieje się tak na przykład wtedy, gdy funkcja spodziewa się liczby całkowitej, a Ty przekazujesz jej tekst.