Ejemplo
La primera sentencia if puede aparecer para comprobar si los argumentos son los mismos, pero sólo será satisfactoria si son diferentes.

void foo( char *string1, char *string2)
{
if( strcmp(string1, string2) ) {
//las series son diferentes
}

if( !strcmp(string1, string2) ) {
//las series son las mismas
}
}

Solución
Para evitar este malentendido, una directriz de código necesitará que las sentencias if se escriban como se especifica a continuación.

void foo( char *string1, char *string2)
{
if(strcmp(string1, string2) != 0) {
//las series son diferentes
}

if( strcmp(string1, string2) == 0) {
//las series son las mismas
}
}