Red de conocimiento informático - Conocimiento informático - Se ha definido el carácter str1[10]="123",*str2="abc"; ¿Por qué la siguiente declaración es incorrecta if(str1>str2)printf("ok!"...

Se ha definido el carácter str1[10]="123",*str2="abc"; ¿Por qué la siguiente declaración es incorrecta if(str1>str2)printf("ok!"...

No está mal, pero no tiene sentido. Motivo: str1 es un nombre de matriz y una dirección constante, y str2 es un puntero. Entonces, si (str1>str2) compara las direcciones de las dos cadenas "123" y "abc" en el espacio de memoria. No tiene sentido. Si desea comparar dos cadenas, puede utilizar la función strcmp.