gpt4 book ai didi

c# - 在 C# 中,十进制值在第一个小数点处停止

转载 作者:太空宇宙 更新时间:2023-11-03 21:32:51 25 4
gpt4 key购买 nike

我想弄清楚为什么我的十进制值没有被正确存储。这是一个示例等式:

//Comes up as 0.0
double foo = 120 / 175;
// Want to convert to look like a percent but comes up as 0.0 also
double bar = foo * 100;

我知道 120/175 是 0.6857...知道吗?

最佳答案

您正在对两个整数执行算术运算,因此结果是一个整数。在将结果存储到 foo 之前,您会丢失结果的小数部分。

您应该先将其中一个值转换为 double:

double foo = 120d / 175;

你也可以用 decimal 来做到这一点,如果那是你实际尝试使用的:

decimal foo = 120m / 175;

一旦您从第一个等式中正确获取了小数值,这部分应该可以正常工作:

decimal bar = foo * 100;

关于c# - 在 C# 中,十进制值在第一个小数点处停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23419676/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com