2

重複の可能性:
MATLAB/Octave で実際の整数オーバーフローを取得するにはどうすればよいですか?

最終的に C++ でコード化するものをシミュレートするのに役立つ Matlab ルーチンを作成しています。1 つの問題は、Matlab と C++ の int が、コンテナーが保持できるよりも大きな結果を生成する算術演算を実行するときに異なる動作をすることです。

たとえば、Matlabintmax('uint16')では が生成され65535ます。そしてintmax('uint16')+1まだ生産してい65535ます。65535 より高くしたい場合は、できません。Matlab は単にキャップをかぶせます。

C++ は異なります。書き込みは加算を完全に実行し、最下位 16 ビットを単純に保持するためunsigned short x = 65535; cout << ++x;生成されます。0

Matlab を同じように動作させる方法はありますか?

4

0 に答える 0