2
如果變量的十進制類型由編譯器定義,則精度丟失的原因是什麼?這是記錄在任何地方?如果解析編譯器的類型,爲什麼會丟失精度?
DATA: gv_1 TYPE p LENGTH 15 DECIMALS 2 VALUE '56555.31'.
DATA: gv_2 TYPE p LENGTH 15 DECIMALS 2 VALUE '56555.31'.
DATA: gv_3 TYPE p LENGTH 15 DECIMALS 2 VALUE '56555.34'.
DATA(gv_sum) = gv_1 + gv_2 + gv_3. "data type left to be resolved by the compiler
WRITE/gv_sum.
DATA: gv_sum_exp TYPE p LENGTH 15 DECIMALS 2. "explicit type declaration
gv_sum_exp = gv_1 + gv_2 + gv_3.
WRITE/gv_sum_exp.
第一總和結果
第二個在
169665.96
感謝您的回答。這似乎是非常危險的。 :| – Jagger
對我來說似乎是,如果有人需要精確度,最好用所有預期的小數來明確定義類型。我通常更喜歡鍵入我的變量。 –
@Jagger,不客氣。並且不要猶豫將答案標記爲正確^) – Suncatcher