Perl での整数オーバーフロー チェック (符号付き、符号なし、ビッグ エンディアン、リトル エンディアン) を使用して、式のさまざまな結果をパックしたいと考えています。私が試してみると:
$ perl -e 'use warnings; print pack("c", 200)' | hexdump -C
私は得る:
Character in 'c' format wrapped in pack at -e line 1.
00000000 c8 |.|
00000001
pack() 関数で発生した整数オーバーフローを確認する方法はありますか? または、関数がオーバーフローで失敗するように強制することはできますか? パッキングする前に各タイプ (符号付き 1、2、4、8 バイト、符号なし 1、2、4、8 バイト) の範囲をチェックすると、コードが少し醜いように見えます。
ありがとう。