为什么 static_cast 在我除以两个整数时不起作用?
Why doesn't static_cast work when I divide two integers?
这个问题是关于C++代码的。我有两个整数 a 和 b,我想将一个除以另一个并将答案存储为双精度数。但是当我输入以下代码时:
int a = 3, b = 7;
double d = static_cast<double>(a/b);
cout<<d<<endl;
我得到0。我不明白为什么。请帮忙
因为您仍在除以两个 ints
。结果仍然是 int
(0),然后将 int
转换为 double
并打印它。尝试先转换其中一个操作数,然后除法。
这个问题是关于C++代码的。我有两个整数 a 和 b,我想将一个除以另一个并将答案存储为双精度数。但是当我输入以下代码时:
int a = 3, b = 7;
double d = static_cast<double>(a/b);
cout<<d<<endl;
我得到0。我不明白为什么。请帮忙
因为您仍在除以两个 ints
。结果仍然是 int
(0),然后将 int
转换为 double
并打印它。尝试先转换其中一个操作数,然后除法。