比较函数strcmp
时间: 2024-01-04 12:20:04 浏览: 148
数据结构-c语言-带main函数-串4-串比较-根据标准库函数strcmp()和定义求串比较函数的两种方法。
strcmp函数是C语言中的字符串比较函数,用于按字典序比较两个字符串的大小。它的调用格式为:
```c
strcmp(str1, str2);
```
其中,str1和str2是要比较的两个字符串。
strcmp函数的比较规则是将两个字符串自左向右逐个字符进行ASCII码大小比较,直到出现不同字符或遇到字符串结束符'\0'停止。根据比较结果,strcmp函数返回不同的值:
- 若两个字符串完全相同,返回值为0;
- 若出现第一对不同字符,计算它们的ASCII码之差;
- 若ASCII码之差为正整数,则str1大于str2,返回值为正数(通常为1);
- 若ASCII码之差为负整数,则str1小于str2,返回值为负数(通常为-1)。
需要注意的是,不能使用条件表达式如str1 > str2来表示字符串的比较,而应该使用strcmp函数。
范例:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "abc";
char str2[] = "def";
char str3[] = "abc";
int result1 = strcmp(str1, str2);
int result2 = strcmp(str1, str3);
printf("Result1: %d\n", result1); // 输出:-1
printf("Result2: %d\n", result2); // 输出:0
return 0;
}
```
阅读全文