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

原创 2016年05月30日 15:03:51
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
int my_memcmp1(const void *p1, const void *p2, size_t count)//方法1
{
    assert(p1);
    assert(p2);
    char *dest = (char *)p1;
    char *src = (char*)p2;
    while (count && (*dest == *src))
    {
        count--;
        dest++;
        src++;
    }
    if (count == 0)
        return 0;
    return *dest - *src;
}
int my_memcmp2(const void *p1, const void *p2, size_t count)//方法2
{
    assert(p1);
    assert(p2);
    int ret = 0;
    char *dest = (char *)p1;
    char *src = (char*)p2;
    while (count && (!(ret = (*dest - *src))))
    {
        dest++;
        src++;
        count--;
    }
    if (ret > 0)
    {
        return 1;
    }
    else if (ret < 0)
    {
        return -1;
    }
    return 0;

}

int main()
{
    int arr1[] = {1,2,3,4,5,6};
    int arr2[] = {1,2,3,1000000,5,6};//清楚内存是怎样放置的
    int ret = my_memcmp2(arr1, arr2, 16);
    printf("%d", ret);
    system("pause");
    return 0;
}

wKiom1ZRiCPTwDTnAAC5GrG0Beg239.png

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

c语言中字符串函数strlen()、strcat()、strcpy()、strcmp()及内存操作函数memset()、memcpy()、memcmp()、memmove()的使用及编码实现

c语言中字符串函数strlen()、strcat()、strcpy()、strcmp()及内存操作函数memset()、memcpy()、memcmp()、memmove()的使用及编码实现 str...

腾讯实习笔试题--简单计算器程序的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
  • 483

整型数组里只出现一次的数字--[c语言笔试题]

找出数组内只出现一次的数字,是一系列的笔试题,来考察大家对位运算的掌握,下面我们从最简单的开始来看看吧! 一、题目:一个整型数组里只有一个数字出现了一次,其余数字都出现了两次,请写程序找出出现了一次的...
  • XHfight
  • XHfight
  • 2016年06月19日 15:00
  • 1128

嵌入式软件笔试题 (c语言版)

转自pkuyjxu 1:用C语言实现大小端的测试    Int CheckCpu()       { union { int a; char b; }c; c.a=1; if...

用C语言编写一个函数返回参数二进制中 1 的个数(3种方法)(谷歌笔试题)

比如: 15       0000 1111       4 个 1 程序原型: int  count_one_bits(unsigned int value) {        // 返回 ...

笔试题:C语言中的字符串问题

做编程题时,使用字符串一般都是直接用的C++的string类库,比C语言指针型操作字符串要简易方便很多。但是笔试题中,经常考察指针在C语言字符串中的问题。 下面就我遇到的一些题,谈下我的理解,如有偏差...

c语言笔试题总结1

c语言笔试题总结,陆续更新。

zz C语言常见笔试题大全(一)

转自:  http://hi.baidu.com/leolife/blog/item/b6569e502d7ecc6184352449.html 1. 用...

c语言常考的笔试题1

最近答了7次笔试题,稍有些心得,企业再面试c语言不会像过去的那种读程序题写结果或者简单的函数编写,再或者考你一些简单的逻辑,c的精华是内存和指针的运用,围绕这些我想写一些东西供自己总结和给同事们、同学...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【C语言】【笔试题】模拟实现memcmp
举报原因:
原因补充:

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