Błąd leksykalny
Zastosowanie jednostki leksykalnej która nie istnieje.
int a = 5 # 3;
Błąd składniowy
Zastosowanie prawidłowej jednostki leksykalnej w zły sposób
int x = (45 - 4) / 2);
Błąd semantyczny
Odwołanie do zmiennej / obiektu, lub wywołanie funkcji / metody która nie została zadeklarowana, lub jest niedostępna w danym scopie.
int main()
{
i = 5;
}
error: 'i' was not declared in this scope
Błędy logiczne
Nie powodują przerwania kompilacji. Są to literówki np. pomylenie operatorów. Skutkują błędnym działaniem programu.