strcmp的调用申明是什么
时间: 2023-08-07 11:06:47 浏览: 97
strcmp的调用声明如下:
```c
int strcmp(const char *s1, const char *s2);
```
其中,`s1`和`s2`是要比较的两个字符串,函数将两个字符串进行逐个字符比较,直到发现不同的字符或者其中一个字符串结束。如果两个字符串完全相等,则返回0;如果`s1`大于`s2`,则返回正整数;如果`s1`小于`s2`,则返回负整数。
相关问题
调用strcmp函数
`strcmp` 函数是 C 语言中标准库函数,用于比较两个字符串。当两个字符串相等时,`strcmp` 函数返回 0;如果第一个不匹配的字符在第一个字符串中的ASCII值大于第二个字符串中的相应字符,则返回一个正数;如果小于,则返回一个负数。`strcmp` 函数定义在头文件 `<string.h>` 中。
下面是 `strcmp` 函数的基本使用方法:
```c
#include <string.h>
int strcmp(const char *str1, const char *str2);
```
这里的 `str1` 和 `str2` 是指向要比较的两个以 null 结尾的字符串的指针。比较是从两个字符串的第一个字符开始,逐一比较它们的 ASCII 值,直到遇到不同的字符或者字符串的结尾。
需要注意的是,`strcmp` 函数区分大小写,即大写字母和小写字母在 ASCII 码中是不同的,因此在比较时也会被区分开。
示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
const char *str1 = "Hello";
const char *str2 = "World";
const char *str3 = "Hello";
if (strcmp(str1, str2) == 0) {
printf("str1 和 str2 相等\n");
} else {
printf("str1 和 str2 不相等\n");
}
if (strcmp(str1, str3) == 0) {
printf("str1 和 str3 相等\n");
} else {
printf("str1 和 str3 不相等\n");
}
return 0;
}
```
运行上述代码,将会得到输出:
```
str1 和 str2 不相等
str1 和 str3 相等
```
调用strcmp函数比较字符串大小时输出结果
当调用 `strcmp()` 函数比较两个字符串大小时,函数会返回一个整数值,表示比较结果。如果字符串相等,则返回值为 0;如果第一个字符串比第二个字符串小,则返回值小于 0;如果第一个字符串比第二个字符串大,则返回值大于 0。
下面是一个比较字符串大小的例子:
```
#include <stdio.h>
#include <string.h>
int main() {
char str1[20] = "Hello";
char str2[20] = "World";
int result = strcmp(str1, str2);
if (result == 0) {
printf("str1 and str2 are equal");
} else if (result < 0) {
printf("str1 is less than str2");
} else {
printf("str1 is greater than str2");
}
return 0;
}
```
在这个例子中,我们先定义了两个字符串 `str1` 和 `str2`,然后调用 `strcmp()` 函数比较它们的大小,将比较结果存储在 `result` 变量中。最后根据 `result` 的值输出相应的结果。如果你运行这段代码,将会输出 "str1 is less than str2",因为在字典序中 "Hello" 比 "World" 要小。
阅读全文