2017/05/02

今更の罠

「perlでint(-0.1)=0」

・・・そうですか。
int(-0.1)=-1
かと思ってました。

これだから浮動小数は・・・

perldoc
wikipedia 端数処理

各int関数の丸め方向
C言語:0方向
perl:0方向
VB:負方向
excel:負方向

C言語は浮動小数からのキャストの場合です
整数演算で除算をした結果の場合は調べてませんが、マイコン依存だったような?
ex.
(int)(-1)/(int)2=???

せっかくのなので検索しました。
http://www.bohyoh.com/CandCPP/FAQ/FAQ00134.html

stackoverlfowのページ
によれば

C:0方向
C99:処理系依存
C++ ~03:処理系依存
C++ 11~:0方向

らしい。
・・・昔も同じようなことを調べたような・・・

0 件のコメント:

コメントを投稿