Is it safe to assume that the if statement will always work if the variable is uninitialized? Assumption is yes, but I have been told that random bits of garbage in the variable does not always mean that the check if null will work.
Void afunction () {
    char* someStr;
    if (someStr) 
    {
        // do something
    }
}