[PHP-users 1241] Re: キーが0x7ffffff f 以上の共有メモリよセマフォが指定できません
Naofumi Kondoh
php-users@php.gr.jp
Sat, 18 Aug 2001 15:04:38 +0900
ソフト工房の近藤です。
"S.Sugichan" wrote:
>
> 杉山です。
(snip)
> //ループから抜けられない
> for($i=0;$i<2147483648;$i++)
>
> //ループから抜けられる
> for($i=0;$i<2147483648;$i=$i+1)
これは面白いですね。
gettype($i) でみていると、$i = $i + 1 だと、
integer から double に自動的に型変換されるんですね。
INT型の 2147483647 に 1 を加算すると、DOUBLE 型の
2147483648 になるのでループを抜けられる。
$i++ だと INT型 のままなんで、 2147483647 を
increment すると、 -2147483648 になってしまうん
ですね。
暗黙に型変換する言語って大嫌いなんですが、これで
また PHP の嫌いなところが増えてしまった。(^_^)。
といっても、便利がところの方が多いから、最近は、
PHP ばっかり使ってますが。 (^_^)。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
(株)ソフト工房 近藤直文 Email: nkon@shonan.ne.jp
PostgreSQL+PHP ソースコードジェネレーター セミナースライド
http://www.shonan.ne.jp/~nkon/cslpg.a.semi/
http://www.SOFTKOUBOU.co.jp/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/