2011-08-23 32 views
7

我在我的方法的一個限定的int值:的iOS:如何檢查如果一個「INT」值等於「無」

int值= [自someMethodThatGetsAnINT];

後來我有一些「ifs」檢查這個值。

如何表達:if(value == nil)

當我嘗試這樣做直觀的編寫代碼,我得到一個警告說:

語義問題:指針和整型(「廉政」和「無效*」)之間的比較

回答

14

nil只是一個0 :)試試這個:

if (0 == value) 

但是,爲什麼你會被測試nil對一個int - 這裏的東西有趣的聲音:)

0

你或許可以使用if (value == (int)nil),但是實際上返回一個int的函數不應該返回nil,因爲nil不是一個整數(雖然它可能被類似地表示)。

this可以幫助它清除掉一點

4

如果你真的想要一個無返回值,你或許應該使用的NSNumber作爲您的返回類型,而不是INT。 NSNumber是一個包裝objective-c中標量值的類。當你有一個有效的返回值時,你可以把一個整數,或者當你沒有時返回nil。

相關問題