我想將雙精度值賦給另一個精度值,但小數點後只打印1個數字,假設我有這個隨機數雙精度值值和現在它的23.12906370532668指定雙精度到另一個帶有1個數字的雙精度小數點後
這怎麼能轉換成只有23.1,但保持爲雙值?我可以這樣說:
NSLog(@"%4.1f\n", double);
但是打印爲字符串我想分配給另一個新的雙。從double one = 23.12906370532668;
到double two = 23.1;
什麼是最好的方法,以及如何做到這一點?
我想將雙精度值賦給另一個精度值,但小數點後只打印1個數字,假設我有這個隨機數雙精度值值和現在它的23.12906370532668指定雙精度到另一個帶有1個數字的雙精度小數點後
這怎麼能轉換成只有23.1,但保持爲雙值?我可以這樣說:
NSLog(@"%4.1f\n", double);
但是打印爲字符串我想分配給另一個新的雙。從double one = 23.12906370532668;
到double two = 23.1;
什麼是最好的方法,以及如何做到這一點?
我不知道你正在嘗試做的,但是這可能是你想要
double d = 23.12906370532668;
NSString *str = [NSString stringWithFormat:@"%4.1f\n", d];
double d2 = [str doubleValue];
您可以通過10輪/截斷/天花板/地板乘(根據您的需要),以一個整體的東西價值,然後除以10.
double two = rint(10.0 * one)/10.0;
這是我在找什麼!謝謝 – user1508409 2012-07-07 08:29:07