char s1[] = "0";
char s2[] = "9";
printf("%d\n", strcmp(s1, s2)); // Prints -9
printf("%d\n", strcmp("0", "9")); // Prints -1
Почему strcmp возвращает разные значения, когда получает одни и те же параметры?
Эти значения по-прежнему допустимы, поскольку на странице руководства strcmp сказано, что возвращаемое значение strcmp может быть меньше, больше или равно 0, но я не понимаю, почему в этом примере они разные.