自己实现strncasecmp

Posted liuyanygz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自己实现strncasecmp相关的知识,希望对你有一定的参考价值。

自己实现
int strncasecmp(const char *s1, const char *s2, int n)
{
#define DIFF_VALUE (‘a‘ - ‘A‘)
#define STRNCASECMP_FALSE (‘z‘ - ‘A‘)
    int ch1 = 0;
    int ch2 = 0;
    int index = 0;

    if (NULL == s1 || NULL == s2 || 0 > n) {
        return STRNCASECMP_FALSE;
    }

    if (0 == n) {
        return 0;
    }

    for (index = 0; index < n ; index++)
    {
        if((ch1 = *(unsigned char *)s1++) >= ‘A‘ && (ch1 <= ‘Z‘)) {
            ch1 += DIFF_VALUE;
        }
        if((ch2 = *(unsigned char *)s2++) >= ‘A‘ && (ch2 <= ‘Z‘)) {
            ch2 += DIFF_VALUE;
        }
        //printf("index=%u, ch1=%c, ch2=%c
", index, ch1, ch2);

        if (‘‘ == ch1 || ch1 != ch2) {
            break;
        }
    } ;

    return ch1 - ch2;
}

  摘自并整理:http://www.voidcn.com/article/p-acjqpctj-oc.html

以上是关于自己实现strncasecmp的主要内容,如果未能解决你的问题,请参考以下文章

12mmaction2 行为识别商用级别X3D复现 demo实现 检测自己的视频 Expanding Architecturesfor Efficient Video Recognition(代码片段

创建自己的代码片段(CodeSnippet)

VS中添加自定义代码片段——偷懒小技巧

solr 学习片段

自己定义View时,用到Paint Canvas的一些温故,简单的帧动画(动画一 ,&quot;掏粪男孩Gif&quot;顺便再提提onWindowFocusChanged)(代码片段

安全测试 web安全测试 常规安全漏洞 可能存在SQL和JS注入漏洞场景分析。为什么自己没有找到漏洞,哪么可能存在漏洞场景是?SQL注入漏洞修复 JS注入漏洞修复 漏洞存在场景分析和修复示例(代码片段