Δημοσιεύτηκε: 16 Φεβ 2012, 14:56
από migf1
migf1 έγραψε:
...
Αυτός ο έλεγχος εγγυάται πως το πρόγραμμά σου δεν θα κρασάρει αν έστω και κατά λάθος σε κάποιο σημείο του κώδικά σου περνάς κάποιο από τα s1, s2 ή και τα 2 ως NULL στην εν λόγω συνάρτηση.

Π.χ. ...

Κώδικας: Επιλογή όλων

void test( char *s )
{
// bla bla
}

int main( void )
{
char *s = NULL;
...
// έχω ξεχάσει να δημιουργήσω το s
...
test( s );
...
}

Χωρίς έλεγχο για !s μέσα στην test() ο παραπάνω κώδικας θα παράξει seg-fault, με τον έλεγχο θα κάνει ότι του έχεις πει εσύ να κάνει σε αυτή την περίπτωση ;)