【发布时间】:2016-01-10 12:51:33
【问题描述】:
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,但我不明白为什么在这个示例中它们不同。
【问题讨论】:
-
ideone.com/S3dYMQ 如果有人想玩...
标签: string-comparison strcmp manpage string.h