2009/11/3 Majian <jian...@gmail.com>:
>
> my $i = 1;
> print  ++$i  + ++$i, "\n";
>
> The above code prints  out  the answer 6 .
> But in the other language  the anser is 5 ,
>

>From the documentation
(http://perldoc.perl.org/perlop.html#Auto-increment-and-Auto-decrement):

"Note that just as in C, Perl doesn't define when the variable is
incremented or decremented. You just know it will be done sometime
before or after the value is returned. This also means that modifying
a variable twice in the same statement will lead to undefined
behaviour. Avoid statements like:

    $i = $i ++;
    print ++ $i + $i ++;

Perl will not guarantee what the result of the above statements is."

-- 
Erez

"The government forgets that George Orwell's 1984 was a warning, and
not a blueprint"
http://www.nonviolent-conflict.org/ -- http://www.whyweprotest.org/

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to