¿Strcmp compara cadenas de diferentes longitudes en C?
int strcmp(const char *s1, const char *S2);
Parámetros s1, s2 son las dos cadenas que se van a comparar.
Las comparaciones de tamaño de cadena están determinadas por el orden en la tabla de códigos ASCII, que también es el valor de los caracteres. Strcmp() primero resta s2 del valor del primer carácter de s1.
El valor del primer carácter, si la diferencia es 0, continúa comparando el siguiente carácter, si la diferencia no es 0.
Se reembolsará la diferencia. Por ejemplo, una comparación de las cadenas "Ac" y "ba" devolverá la diferencia (-33) entre los caracteres "A" (65) y "b" (98).
Valor de retorno Si los parámetros de las cadenas s1 y s2 son los mismos, se devuelve 0. Si es mayor que s2, S1 devolverá un valor mayor que 0. Si es menor que s2, S1 devuelve un valor menor que 0.
Entonces el tamaño se compara en el orden del diccionario. Por ejemplo, "a" es mayor que "ASDNZONWAOIDAOWIJDOWADNWO".
"aaaab" es mayor que "aaaaa"
La longitud no afecta el resultado de la comparación, a menos que una de las dos cadenas sea una subcadena de la otra; de lo contrario, el valor de retorno será verse afectado.