将double赋给另一个double,小数后面有1个数字

时间:2012-07-07 07:46:29

标签: iphone objective-c cocoa

我想将double的值分配给另一个double,但是在小数点后只打印1个数字,假设我有这个随机的 double 值,现在它的 23.12906370532668

如何将其转换为 23.1 ,但保持双倍值?我可以说:

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

但是它打印为字符串我想将它分配给另一个新的double。从double one = 23.12906370532668;double two = 23.1;最好的方法是什么,怎么做?

2 个答案:

答案 0 :(得分:0)

我不确定你要做什么,但这可能是你想要的

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

答案 1 :(得分:0)

您可以乘以10,round / truncate / ceiling / floor(根据需要)为整数值,然后除以10.

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