當使用數學運算時,我有一個關於在基值類型之間轉換的常見問題。 Microsoft C#規範中是否有書面規則?我找不到它們。它在Mono中的工作原理是否相同?當在C#中需要基值類型的轉換時
例子:
double a = 1/1234; //Result is 0
double b = 1.0/1234; //Result is 0,000810372771474878
double c = 1.0/(double)1234; //Result is 0,000810372771474878
double d = (double)1/(double)1234; //Result is 0,000810372771474878
double e = 1/1234.0; //Result is 0,000810372771474878
我可以假設,結果始終是一個雙重當股息或除數雙打? 或者由於某種原因,是它更好地保證兩者都是雙打(見案例d - 我見過很多這樣的代碼,這實際上讓我問這個問題)
問候, 塞巴斯蒂安