我正在构建一个应用程序,允许用户执行一些计算,但计算结果中的数字有很多小数位。看到这种精确度对我来说很好,但我想让用户能够选择他们想要显示多少位有效数字。我正在使用 double 并使用此处显示的 %g 格式创建结果字符串:
NSString *resultString = [[NSString alloc] initWithFormat:@"%.14g", result];
我创建了一个步进器,用户可以与之交互并将他们选择的数字存储在另一个替身中。我的问题是,如何在 14
的位置插入那个 double 来更改有效位数?或者这甚至可能吗?如果您需要说明,请发表评论。
最佳答案
格式中的任何字段宽度或精度都可以用 *
替换,以指示由 int
参数提供的动态值。
例如:
double d = 1.0/7;
for(int i = 4; i < 12; i++)
NSLog(@"%.*g", i, d);
输出:
0.1429
0.14286
0.142857
0.1428571
0.14285714
0.142857143
0.1428571429
0.14285714286
关于ios - 使用 %g 更改字符串格式的有效数字位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17516499/