【问题标题】:How to print formatted float in obj-c?如何在 obj-c 中打印格式化的浮点数?
【发布时间】:2012-03-21 08:52:23
【问题描述】:

如何在 Objective-C 中将float 打印为例如3.45 而不是3.45555555555

【问题讨论】:

标签: objective-c floating-point number-formatting


【解决方案1】:

尝试像这样格式化浮点数:

NSLog(@"%.2f", myFloat);

% 符号表示这将被 (myFloat) 后面的相应参数替换。 .2 表示 2 位小数,f 表示 float 数据类型。

查看here了解更多详情。

Objective-C 的 NSLog 与 C 的 printf 非常相似,主要的例外是您必须使用 Objective-C 字符串文字 (@"…") 并且您应该使用 %@ 来表示 Objective-C 字符串(NSStrings) 而不是 %s,后者用于 "Plain C strings"

【讨论】:

  • @Austin - 你所说的动态是什么意思?你能编辑你的帖子并解释一下吗?
  • 我的意思是,就像@Jack Stone 所做的那样,%g
【解决方案2】:

取决于您的打印方式。如果您想在 GUI 中显示它(这可能是 Cocoa 和 Cocoa Touch 应用程序的常见情况),请使用 NSNumberFormatter 并将其设置为两位小数。如果你通过 NSLog() 或 printf() 打印它,你会使用 format specifier 沿着 "%.2f" 的行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-26
    • 2019-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多