2012-05-17 64 views
3

我想檢查我的對象地址是否爲0x0。如何在目標c中做到這一點?如何知道對象地址是否爲0x0?

+0

出了什麼問題'myPointer ==比較0'(假設像'ID myPointer = ...'或'的NSString * myPointer = ...')。甚至是'!myPointer'或'myPointer == nil'?我錯過了什麼嗎? – Dirk

+0

我已經試過了。這是行不通的。我有UIView。當我wath地址顯示0x0。但與零比較不起作用... – Radislav

回答

5

只是比較基準爲

if (obj == nil) 

if (obj == NULL) 

if (obj == 0) 

if (!obj) 

你可以用它們都是同它們中的任何一個。

2

可以測試一個零指針這樣的:

if (!myObject) { 
    // myObject is nil (0x0). 
} 

或者這樣:

if (myObject == nil) { 
    // myObject is nil (0x0). 
} 
+0

感謝您的回答。我已經嘗試過了。這是行不通的。我有UIView。當我wath地址顯示0x0。但與零比較不起作用... – Radislav

+0

張貼一些代碼。 – DrummerB

+0

if(view == 0) {view setBackgroundColor:[UIColor whiteColor]]; } else if(view == NULL) {查看setBackgroundColor:[UIColor whiteColor]]; } else if(view == nil) {view_setBackgroundColor:[UIColor whiteColor]]; } – Radislav

3
if(object == nil){ 

// it means memory for this object is not allocated 

} 
2

該地址是等於爲零,所以你NUST需要將它與nil

相關問題