0

为了便于理解和纠正错误,我简化了一些方法。我得到一个'nan'而不是得到数字,不明白为什么。我想将 getNumber 方法放在 return 语句中。当我在其中有方法时,它返回一个 nan 字符串,但是当我将 26 放入其中时,它返回 26,这是我想要的。

-(double) getNumber { return 26; }


-(NSString *) convertToString {
        return [NSMutableString stringWithFormat: @"%Lf",[self getNumber]];
// returns 'nan'           when I replace [self getNumber] with 15 I get 15
}
4

3 回答 3

2

您的代码中有几个问题。

  1. 返回一个双精度,而不是一个整数getNumber。虽然会发生自动强制,但请编写干净的代码。
  2. 使用%g格式说明符,而不是%Lf. %g是双打。
于 2010-12-29T20:55:28.347 回答
0

您可能想使用“%f”而不是“%Lf”,因为您传递的是 a double,而不是 along double

于 2010-12-29T20:56:49.367 回答
0

这是您的格式说明符。您应该使用 "%g" 来格式化双精度。

于 2010-12-29T20:57:29.090 回答