ホームページ > バックエンド開発 > PHPチュートリアル > PHPの乗算にバグがあるのでしょうか?

PHPの乗算にバグがあるのでしょうか?

WBOY
リリース: 2016-06-13 13:35:25
オリジナル
1057 人が閲覧しました

phpの乗算にバグがあるのでしょうか?
85112854 * 4294967296 + 384440042
sprintf("%.0f"を使った計算結果は365556924783662848、電卓で計算した結果は365556924783662826
これには困りました問題 大きな頭が死んでいます。
理由を知っている人はいますか?

------解決策-- -
このように計算するか、gmp関数

PHPコード
を使用してください

エコー badd(bcmul(85112854, 4294967296), 384440042);
<br><font color="#e78608">------解決策------------------</font><br>
echo badd(bcmul('85112854', '4294967296', 0), '384440042', 0);//365556924783662826<br> <div class="clear"></div>
ログイン後にコピー
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート