|
|
|
|
<?php
$i = 1;
$j = ($i++ * 2) + --$i;
echo $j;
?>
|
почему 3? :) | |
|
|
|
|
|
|
|
для: Root
(07.03.2008 в 05:46)
| | >
><?php
>$i = 1;
>$j = ($i++ * 2) + --$i;
>echo $j;
>?>
>
|
>почему 3? :)
$i++ * 2 = 2, поскольку данный инкремент срабатывает только при следующем обращении к переменной $i.
а вот --$i = 1, поскольку $i уже здесь равна 2, и ты ее декрементируешь. Итого:
$j = (1*2) + 1
очень полезно:
http://cclib.nsu.ru/projects/gnudocs/texts/kernigan.html
http://www.php.net/manual/ru/language.operators.increment.php | |
|
|
|
|
|
|
|
для: Root
(07.03.2008 в 05:46)
| | Просто
$i = 1;//хранящееся значение
($i++ * 2) + --$i;
$I++ // сначала возвратит значение а потом увеличит 1*2=2; $i++=2;
--$i // сначала уменьшит значение потом возвратит --$i=1; 2+1=3 | |
|
|
|
|
|
|
|
для: Root
(07.03.2008 в 05:46)
| | а я уж подумал, что тут и правда загадка :( | |
|
|
|
|
|
|
|
для: vitroot
(07.03.2008 в 06:27)
| | >а я уж подумал, что тут и правда загадка :(
после бессонной ночи была довольно загадочной ;) | |
|
|
|