Closed. This question is off-topic。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                        
                        4年前关闭。
                                                                                            
                
        
据我了解,当乘以一个浮点数和一个整型数时,该整型会被提升为浮点数,因此乘积可以占小数部分。另一方面,将浮点数除以int时,不会提升,并且商的任何小数部分都将被丢弃。这种不对称的原因是什么?

float f1 = 13.3;
int i1 = 2;
float product = f1 * i1;  // Product will be 26.6
float quotient = f1 / i1;  // Quotient will be 6.0


编辑:嗯,我想我错了。一个int也被除法提升。对?截断仅适用于有两个整数的除法。对?该网站的最佳做法是什么,我应该删除这个问题,因为它太差劲了吗?

最佳答案

另一方面,将浮点数除以int时,不会提升,并且商的任何小数部分都将被丢弃。


那根本是不正确的。保留小数部分。在这种意义上,乘法和除法运算以相同的方式工作。

10-08 08:57
查看更多