KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
In a recent code review, a contributor is trying to enforce that all NULL checks on pointers be performed in the following manner: int * some_ptr; // ... if (some_ptr == NULL) { // Handle null-pointer error } else { // Proceed } instead of int * some_ptr; // ... if (some_ptr) { // Proceed } else { // Handle null-pointer error } I agree that his way is a little more clear in the sense that it's explicitly saying "Make sure this pointer is not NULL", but I would counter that by saying that anyone who's working on this code would understand that using a pointer variable in an if statement is implicitly checking for NULL . Also I feel the second method has a smaller chance of introducing a bug of the ilk: if (some_ptr = NULL) which is just an absolute pain to find and debug. Which way do you prefer and why?
Tags (comma-separated)
Save Edits
Cancel