Сей оператор предназначен для
преобразования отрицательных значений
переменных в положительные и наоборот.
Другими словами, Perl просто инвертирует
значения. Любое значение, отличное от нуля,
Perl рассматривает как "истинное".
Op1 0 1 |
Op2 1 0 |
Пример:
$firstVar = 10;
$secondVar = !$firstVar;
if ($secondVar == 0) {
print("zero\n");
};
Здесь переменной $firstVar присваивается значение 10. Затем переменной $secondVar присваивается значение 0, - потому что результат логического отрицания числа 10 будет 0. Потом производится проверка на равенство переменной $secondVar нулю, и если это так, то печать сообщения "zero". Таким образом, в любом случае на экран будет выведено "zero".