一、函数功能描述
函数签名:
#include<strings.h>
int strcasecmp(const char * s1, const char * s2);
int strncasecmp(const char * s1, const char * s2, size_t n);
函数介绍:
strcasecmp用忽略大小写比较字符串。通过strcasecmp函数可以指定每个字符串用于比较的字符数。
strncasecmp用来比较参数s1和s2字符串前n个字符,比较时会自动忽略大小写的差异。
strcasecmp函数是二进制比较,对大小写不敏感,此函数只在Linux中提供。
返回值:
若参数s1和s2字符串相等返回0,s1大于s2则返回大于0的值,s1小于s2则返回小于0的值。
二、例子
#include <strings.h>
#include <stdio.h>
int main(int argc, char* argv[])
{
const char *s1 = "aBcDeD";
const char *s2 = "AbCdEd";
const char *s3 = "abcdefg";
const char *s4 = "bacdefg";
if (int len = strcasecmp(s1, s2))
{
printf("%s != %s\n", s1, s2);
}
else
{
printf("%s = %s\n", s1, s2);
}
if (int len = strcasecmp(s1, s3))
{
printf("%s != %s, len = %d\n", s1, s3, len);
}
else
{
printf("%s = %s\n", s1, s3);
}
if (int len = strcasecmp(s1, s4))
{
printf("%s != %s, len = %d\n", s1, s4, len);
}
else
{
printf("%s = %s\n", s1, s4);
}
return 0;
}
结果:
aBcDeD = AbCdEd
aBcDeD != abcdefg, len = -2
aBcDeD != bacdefg, len = -1
三、正式代码中的使用
来源:tinyhttpd