Exemple
La première instruction if pourra apparaître pour vérifier si les arguments sont identiques, mais cette instruction n'aboutira que si les arguments diffèrent.

void foo( char *string1, char *string2)
{
if( strcmp(string1, string2) ) {
//les chaînes sont différentes
}

if( !strcmp(string1, string2) ) {
//les chaînes sont identiques
}
}

Solution
Pour éviter ce type de malentendu, une directive de codage peut demander à ce que les instructions if soient rédigées comme indiqué ci-dessous.

void foo( char *string1, char *string2)
{
if(strcmp(string1, string2) != 0) {
//les chaînes sont différentes
}

if( strcmp(string1, string2) == 0) {
//les chaînes sont identiques
}
}