开发者社区 问答 正文

double类型的数据printf输出,当值很大时的输出问题

double a=11111*11111;
doube b=111111111*111111111;
double c=11个1*11个1;

三者输出如下:screenshot

展开
收起
a123456678 2016-03-20 09:50:08 2681 分享 版权
1 条回答
写回答
取消 提交回答
  • 因为你直接写整数。那么它的乘法其实是整数乘法,最后转换为double
    而整数乘法溢出了。

    doube b=(double)111111111*(double)111111111;
    这么写看看

    2019-07-17 19:08:41
    赞同 展开评论
问答标签:
问答地址: