檢查非空指針:if(pointer) 與if(pointer != NULL)
問題:
使用if(pointer) 而不是傳統的if(pointer != NULL) 來驗證指標的非空狀態是否可以接受?
答案:
是的,這是允許的。使用 if(pointer) 是安全的,因為空指標會隱式轉換為布林值 false,而非空指標會轉換為 true。此行為在C 11 標準的布林轉換部分中定義:
「算術、無範圍枚舉、指標或指向成員類型的指標的純右值可以轉換為bool 類型的純右值。零value 、null 指標值或null 成員指標值轉換為false 任何其他值都會轉換為true。
以上是使用'if(pointer)”而不是'if(pointer != NULL)”檢查非空指標是否安全?的詳細內容。更多資訊請關注PHP中文網其他相關文章!