【C语言】【面试题】【笔试题】模拟实现strncmp

原创 2016年05月30日 15:03:42
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>

int my_strncmp(const char *dest, const char *src, int len)
{
    assert(dest);
    assert(src);
    while (len && (*dest == *src))
    {
        dest++;
        src++;
        len--;
    }
    if (*dest == '\0')
    {
        return  0;
    }
    else if (len == 0)
    {
        dest--;
        src--;
        return *dest - *src;
    }
    else
    {
        return *dest - *src;
    }
}


int main()
{
    char arr1[] = "abcdef";
    char arr2[] = "abcde";
    int ret = my_strncmp(arr1, arr2, 6);
    printf("%d", ret);
    system("pause");
    return 0;
}

wKiom1ZRgFPiRz9sAABbdAmy3DA581.png

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【C语言】模拟实现strncpy strncat strncmp strchr strrchr函数

模拟实现strncpy strncat strncmp strchr strrchr函数!

【C语言】模拟实现strncpy、strncat、strncmp函数

【C语言】模拟实现strncpy、strncat、strncmp函数

C语言 模拟实现strcmp strncmp

strcmp的作用是比较两个字符串的大小

腾讯实习笔试题--简单计算器程序的c语言实现

/*本程序是一个简单的计算器模拟程序。对任意给定的正确的四则表达式,程序计算其结果值并输出。表达式中运算分量为无 正负号整数,运算符为+ - * / ,圆括号按常规配对,表达式以“=”结束。函数get...

字符排序(美团网笔试题)C语言实现

#include #include void sort(char str[],int len) { int i,j; int temp; for (i=0;ii;j--) ...
  • ru_li
  • ru_li
  • 2014-09-11 22:01
  • 441

C语言实现谷歌面试题:写一个函数返回参数二进制中 1 的个数

写一个函数返回参数二进制中 1 的个数 比如: 15       0000 1111       4 个 1 方法一:参数为整形参数,首先需要将整形参数转换为二进制序列,需要对这个参数进行模2除2。参...

华为面试题:一元多项式的化简 C语言实现源码

编程实现如下功能:对输入的一元多项式,进行同类项合并,并按指数降序排序,输出处理后的一元多项式。 说明: 1.多项式由若干个单项式组成,单项式之间为加、减(+,-)关系。 2.单项式指数字与字...

剑指offer面试题:二维数组中的查找,C语言实现

我是从九度OJ上面看到这个

2016 C语言面试题——字符串函数的实现

C语言各类字符串函数的实现开学就要开始找工作了,我觉得这些函数被问到的几率还是很大的,所以在这里与大家分享strlen函数原型:#include unsigned int strlen (char ...

C语言实现无头单链表及链表相关面试题(重点!)

链表通常是面试中的重点,本文是用C语言写一个无头单链表,并介绍它的相关面试题的解法。 其中涉及到的面试题如下: 1. 比较顺序表和链表的优缺点,说说它们分别在什么场景下使用? 顺序表:内...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)