倍長整数に桁あふれの値が入った結果の違い

Go down

倍長整数に桁あふれの値が入った結果の違い Empty 倍長整数に桁あふれの値が入った結果の違い

投稿 by hosaka on 2019-04-19, 1:37 pm

おそらく64bitと32bitの違いによるものだと思うのですが、
winで倍長整数フィールドに桁あふれの値が代入された場合には0になる様なのですが、
macで代入した場合には0ではなく間違った値が入るみたいです。

こういう細かなところの結果がちがうと誤動作の原因になるのですが、代入しようとして値が桁あふれの場合4Dはランタイムエラーなってくれないものでしょうかね。
hosaka
hosaka

投稿数 : 154
登録日 : 2016/07/04
所在地 : 大阪

トップに戻る Go down

倍長整数に桁あふれの値が入った結果の違い Empty Re: 倍長整数に桁あふれの値が入った結果の違い

投稿 by miyako on 2019-06-03, 11:55 pm

開発部に問い合わせましたところ,ご指摘に動作は仕様とのことでした。

他の言語で調べても,整数オーバーフローの振る舞いは未定義,というのが一般的な仕様のようです。

参考記事

https://4d-jp.github.io/2019/05/11/signed-int-overflow/

miyako

投稿数 : 348
登録日 : 2016/07/05

トップに戻る Go down

トップに戻る


 
Permissions in this forum:
返信投稿: 不可