2012-07-07 63 views
0

我想將雙精度值賦給另一個精度值,但小數點後只打印1個數字,假設我有這個隨機數雙精度值值和現在它的23.12906370532668指定雙精度到另一個帶有1個數字的雙精度小數點後

這怎麼能轉換成只有23.1,但保持爲雙值?我可以這樣說:

NSLog(@"%4.1f\n", double); 

但是打印爲字符串我想分配給另一個新的雙。從double one = 23.12906370532668;double two = 23.1;什麼是最好的方法,以及如何做到這一點?

回答

0

我不知道你正在嘗試做的,但是這可能是你想要

double d = 23.12906370532668; 
NSString *str = [NSString stringWithFormat:@"%4.1f\n", d]; 
double d2 = [str doubleValue]; 
+0

這是我在找什麼!謝謝 – user1508409 2012-07-07 08:29:07

0

您可以通過10輪/截斷/天花板/地板乘(根據您的需要),以一個整體的東西價值,然後除以10.

double two = rint(10.0 * one)/10.0;