strcmp函数用于比较两个字符串是否相等。如果两个字符串相等,返回值为0,如果不相等,返回值为非0。用c语言表示
时间: 2024-05-21 11:16:14 浏览: 66
int strcmp(const char* str1, const char* str2) {
while (*str1 && (*str1 == *str2)) {
str1++;
str2++;
}
return *(const unsigned char*)str1 - *(const unsigned char*)str2;
}
// 如果两个字符串相等,返回值为0,如果不相等,返回值为非0,具体值取决于第一次不相等的字符的 ASCII 码差值。
相关问题
c语言编写函数,比较两个字符串是否相等
在C语言中,可以使用strcmp()函数来比较两个字符串是否相等。该函数位于<string.h>头文件中。
函数原型为:int strcmp(const char *s1, const char *s2);
函数返回值说明:
- 若返回值为0,则表示两个字符串相等。
- 若返回值小于0,则表示s1所指向的字符串小于s2所指向的字符串。
- 若返回值大于0,则表示s1所指向的字符串大于s2所指向的字符串。
下面是一个简单的例子:
```
#include <stdio.h>
#include <string.h>
int main()
{
char str1[20] = "Hello";
char str2[20] = "World";
if(strcmp(str1, str2) == 0)
{
printf("两个字符串相等\n");
}
else
{
printf("两个字符串不相等\n");
}
return 0;
}
```
输出结果为:"两个字符串不相等"。
c语言 编写函数,比较两个字符串是否相等
你可以使用标准库函数strcmp来比较两个字符串是否相等。
strcmp函数的原型为:
```c
int strcmp(const char *str1, const char *str2);
```
它的返回值有以下3种情况:
- 如果str1等于str2,则返回0。
- 如果str1小于str2,则返回一个负整数。
- 如果str1大于str2,则返回一个正整数。
因此,我们可以使用strcmp函数来比较两个字符串是否相等,如果返回值为0,则说明两个字符串相等。
比较函数的代码示例:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[100];
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
if (strcmp(str1, str2) == 0)
{
printf("两个字符串相等\n");
}
else
{
printf("两个字符串不相等\n");
}
return 0;
}
```
在这个例子中,我们首先使用scanf函数从标准输入中读取两个字符串,然后使用strcmp函数比较它们是否相等,最后根据返回值输出结果。
阅读全文