NULL в логических выражениях си эквивалентен нулю. условие типа =
char* result; if (!(*result)) { free( result ); result = NULL; }
выполниться в случае если result будет равен NULL