глюки perl'a ?

Oct 23, 2010 01:18

$ perl -e 'print (-10-10)/2;'
-20
$ perl -e 'print (-10-10);'
-20

хм, однако )

bug, perl

Leave a comment

Comments 6

utilmind October 23 2010, 04:58:52 UTC
Это не тока в перле но и в других скриптах. Нада в скобочки брать integer output.

perl -e 'print ((-10-10)/2);'

Reply

kroteg October 23 2010, 09:02:19 UTC
нифига ...

$ php -r "echo (-10-10)/2;"
-10

$ python -c "print (-10-10)/2"
-10

$ ruby -e "print (-10-10)/2"
-10

$ lua -e 'io.write("(-10-10)/2=",(-10-10)/2,"\n")'
(-10-10)/2=-10

Reply

kroteg October 23 2010, 09:11:53 UTC
не и насчет integer output

$ perl -e "print (-10-10)/3;"
-20

тут явный не-integer должен был получиться ...

Reply


gul_kiev October 23 2010, 08:54:51 UTC
print - это функция, и если после этого слова идёт открывающая скобка, то в скобках будет её аргумент. А потом на два разделится результат выполнения этой функции.
Я тоже на такое наступал. :)

Reply

kroteg October 23 2010, 09:13:28 UTC
мдя. надо с warning-ами запускать и будет счастье ;)

$ perl -we "print (-10-10)/2;"
print (...) interpreted as function at -e line 1.
Useless use of division (/) in void context at -e line 1.
-20

Reply


ps1kodel1k March 24 2012, 20:58:08 UTC
Поздравляю с очередным ДРом

Reply


Leave a comment

Up