2011-03-23 64 views
2

什么是来自Java的Double.NaN的Objective-C等价物?我有一个返回double的函数,但它有两种情况,它可以返回Double.NaN。我将如何在Objective-C中实现它?Java中Double.NaN的Objective-C等价物是什么?

+0

你的函数是否返回一个原始'double'或一个对象'NSNumber'? – falconcreek 2011-03-23 20:16:10

+0

原始双。 – Moshe 2011-03-23 20:19:50

回答

8
double nan = NAN; 

很简单。 :)

10
#include <math.h> 

... 
return NAN; 

这样简单。如果由于某种原因,你不能包括<math.h>,您还可以使用

return __builtin_nan(""); 

与任何GCC或铿锵。

顺便提及,像目标C的最低级语言特征,这是直接从C.继承了C时的参数的有关部分是§7.12:

NAN是当且仅限定如果该实现支持浮点类型的安静NaN。它扩展到代表安静的NaN的float类型的常量表达式。

当你学习Objective-C,请记住,每 C程序是一个Objective-C程序中,并没有什么错误使用C语言功能来解决你的问题。

相关问题