Monday, February 16, 2009

Неопределенное поведение в Perl

В Perl, как и в C, встречаются случаи неопределенного поведения. Классический пример - изменение переменной дважды в одном выражении, e.g.

perl -le '$i=10; print ++$i + ++$i + ++$i' # печатает 37

Сюда же можно отнести:


  • "my" с модификатором, например: my $x if 1;

  • Использование функции sort() в скалярном контексте

  • 1<<32, если тип integer имеет размер 32 бита

  • и т.д.

No comments:

Post a Comment