logo

Семантична грешка

По време на фазата на семантичен анализ се появява този тип грешка. Тези видове грешки се откриват по време на компилиране.

Повечето от грешките по време на компилиране са грешка в обхвата и декларацията. Например: недекларирани или множество декларирани идентификатори. Несъответстващият тип е друга грешка по време на компилиране.

Семантичната грешка може да възникне при използване на грешна променлива или използване на грешен оператор или извършване на операция в грешен ред.

Някои семантични грешки могат да бъдат:

  • Несъвместими типове операнди
  • Недекларирана променлива
  • Несъвпадение на действителния аргумент с официалния аргумент

Пример 1: Използване на неинициализирана променлива:

 int i; void f (int m) { m=t; } 

В този код t е недеклариран, затова показва семантичната грешка.

Пример 2: Типова несъвместимост:

 int a = 'hello'; // the types String and int are not compatible 

Пример 3: Грешки в изразите:

 String s = '...'; int a = 5 - s; // the - operator does not support arguments of type String