C# C如果语句和十进制变量小于1且大于0
我是编程新手,我发现如果你在处理钱的问题,最好使用十进制。我注意到如果我使用if语句,比如 如果售价<0.01C# C如果语句和十进制变量小于1且大于0,c#,if-statement,decimal,C#,If Statement,Decimal,我是编程新手,我发现如果你在处理钱的问题,最好使用十进制。我注意到如果我使用if语句,比如 如果售价
如果salePrice是一个十进制数,它将不起作用,因为.01代表一个双精度浮点数。如果我把所有的东西都改成两倍,它就行了。但是,我需要把所有的东西都保留为十进制,就我所知,你真的不能把十进制和双精度混为一谈。如果将其设置为if salePrice==0,则通过使用itemCost-itemCost*99.99…%仍将显示$0.00,这不是我想要的。有没有办法解决这个问题,或者如果salePrice<1,我会坚持吗?使用'm'后缀指定它是十进制,而不是浮点或双精度:
//This works
if (salePrice < 0.01m)
有关更多详细信息,请参阅。这是否回答了您的问题?如果你想知道为什么m?,它代表钱