問題タブ [numeric-limits]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 整数型 int64_t がこの正当な値を保持できないのはなぜですか?
コーナーケースのテストケースを書こうとしています。type の入力のint64_t
場合、次の行はコンパイルされません。
エラー/警告は次のとおりです。
数値が範囲外だと思ったので、試しました:
まったく同じ数値が出力されます!!! したがって、定数は範囲内です。
このエラーを修正するにはどうすればよいですか?
c++ - 数値型が別の型のサブセットかどうかを確認する
整数型が別の整数型のサブセットであるかどうかをチェックするメタ関数を実装しようとしています。プラットフォームに依存せず、少なくとも C++ 標準で定義されているすべての数値型で動作する必要があります。私の現在の実装には 5 つのブランチがあります。それについて 2 つの質問があります。
- 見逃すケースはありますか?
- 4番目のブランチは必要ですか?
intmax_t == long の修正された実装:
c++ - Visual Studio 2019 で numeric_limits を使用すると、C++ long double の最小値/最大値が正しくありません
Visual Studio Community 2019 v16.4.2 と 64 ビット Win10 に付属する最新のものを使用します。
さまざまなデータ型の制限をテストしているときに奇妙なバグが発生しましたが、numeric_limits は double と long double の最小/最大値を区別できません。デフォルトの GNU Mac ツール チェーンで NetBeans を使用して、より合理的な結果を表示します。
コンソール出力