Оператор сравнения равенства в C равен ==
.В Delphi эквивалентный оператор - =
.
Так что вам нужно использовать этот код:
is_match := temp_val=val;
Интересно, что в стороне оператор равенства C приводит к оченьклассический и трудно обнаружить ошибку.Это выглядит так:
if (x=0)
DoSomething();
Здесь происходит то, что =
является оператором присваивания, и поэтому x
присваивается значение 0
, которое затем проверяется на истинность.И это возвращает false, и поэтому DoSomething()
никогда не выполняется.Я считаю, что эта потенциальная путаница является одной из причин, по которой Паскаль решил использовать :=
для назначения.