Skip to content
Zhou Minghong edited this page Apr 3, 2019 · 9 revisions

Welcome to the decimal wiki! 使用long long作为decimal数据类型的底层表示。另外还需要一个额外存储记录scale(取值0-18) long long 拥有8个byte,可以表示-99999...999 ~ 999...999 (18个9). 因此decimal的加减乘除都可转化为long long的计算。

  • 加减法: --对齐小数点,即将scale小的decimal对应的longlong乘以10^(scale1-scale2) --对齐的两个longlong相加,同时返回结果对应的scale
  • 乘法: --两个longlong相乘 --由相乘两数的scale计算记过的scale
  • 除法: --转换为double相除
Clone this wiki locally