strcmp比较1,2会返回什么
时间: 2024-03-14 11:43:14 浏览: 14
strcmp函数比较两个字符串的大小时,如果第一个字符串小于第二个字符串,则返回一个负数;如果两个字符串相等,则返回0;如果第一个字符串大于第二个字符串,则返回一个正数。
因此,如果使用strcmp函数比较字符串"1"和字符串"2"的大小,由于"1"的ASCII码值比"2"的小,函数将会返回一个负值,表示第一个字符串小于第二个字符串。
下面是一个简单的例子,展示了如何使用strcmp函数比较字符串"1"和字符串"2":
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "1";
char str2[] = "2";
int result = strcmp(str1, str2);
if (result < 0) {
printf("%s is less than %s\n", str1, str2);
} else if (result > 0) {
printf("%s is greater than %s\n", str1, str2);
} else {
printf("%s is equal to %s\n", str1, str2);
}
return 0;
}
```
输出结果如下:
```
1 is less than 2
```
可以看到,strcmp函数将字符串"1"视为小于字符串"2",因此输出结果为"1 is less than 2"。
总之,strcmp函数比较两个字符串的大小是按照字典顺序逐个比较两个字符串中的字符,而不是直接比较字符的ASCII码值。