Linux strcasecmp和strncasecmp函数

9 篇文章 0 订阅

一、函数功能描述

函数签名:

#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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值