有没有办法在目标 c 中使用科学记数法并让它只显示三个有效数字?我目前使用的是:
string = [NSString stringWithFormat:@"%e", floatNumber];
// floatNumber = 100000; string = 1.000000e+06
我只想要字符串 = 1.00e+06
有没有办法在目标 c 中使用科学记数法并让它只显示三个有效数字?我目前使用的是:
string = [NSString stringWithFormat:@"%e", floatNumber];
// floatNumber = 100000; string = 1.000000e+06
我只想要字符串 = 1.00e+06
使用格式说明符“.2”,如下所示:
string = [NSString stringWithFormat:@"%.2e", floatNumber];
NSString 格式化方法和 CFString 格式化函数支持的格式说明符遵循 IEEE printf 规范...
从IEEE printf 规范中,如果您阅读描述部分,您会发现:
乙,乙
双参数应转换为“[-]d.ddde±dd”样式,其中基数字符前有一位数(如果参数非零,则非零),其后的位数等于精度;精度缺失的,取6;如果精度为零且不存在“#”标志,则不会出现基数字符。低位数字应以实现定义的方式四舍五入。E 转换说明符将产生一个带有“E”而不是“e”引入指数的数字。指数应始终包含至少两位数字。如果该值为零,则指数应为零。