1 c# casting division typeconverter int64
这是我在C#代码上所拥有的:
Int64 Free = Convert.ToInt64(number1); //has to be ToInt64
Int64 Size = Convert.ToInt64(number2); //has to be ToInt64
Int64 Total = (Free/Size) * 100;
Run Code Online (Sandbox Code Playgroud)
Free是35387133952,大小是64419262464
手动划分Free / Size我得到0.5493
问题:不是总回报54.93,而是返回0
任何想法为什么会发生这种情况?
谢谢
您正在尝试将两个整数相除。这是预期的行为。
如果您需要浮点数答案,则需要将值转换为浮点数:
double Total = ((double)Free/(double)Size) * 100;
Run Code Online (Sandbox Code Playgroud)