c++ - C++ 中的除法

标签 c++ double implicit-conversion integer-arithmetic

<分区>

我是 C++ 的新手,我尝试了这个简单的代码:

#include<iostream>
#include<math.h>
using namespace std;

int main(){
    double a;
    a=1/6;
    cout<<a;
}

但结果是 0。据我了解,double 应该与实数一起使用,所以结果不应该是 1/6 或 0.1666666 吗?谢谢!

最佳答案

在表达式 1/6 中,两个数字都是整数。这意味着此除法将执行整数除法,结果为 0。要进行 double 除法,一个数字必须是 double:例如 1.0/6

关于c++ - C++ 中的除法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36266370/

相关文章:

c++ - 如何使用 vtk 旋转/平移/翻转 vtkActor2D 对象?

c++ - Sum C++ 返回的垃圾值

C# 使数字向上舍入产生不准确的结果

scala - 隐式定义有多糟糕?

c++ - 一旦执行完成就杀死子进程(在fork之后)

C++ 返回一个对象或在函数内部更改对象

c++ - 无法将标准数组初始化为标准 vector

swift - 将字符串转换为 double 给出 nil

c++ - 将 lambda 分配给 std::function

c++ - 从 int 到 uint8_t 的隐藏缩小转换