⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 memcmp.c

📁 Nucleus Common Library for Integrator using ARM Developer Suite
💻 C
字号:
/*************************************************************************
*
*               Copyright Mentor Graphics Corporation 2002
*                         All Rights Reserved.
*
* THIS WORK CONTAINS TRADE SECRET AND PROPRIETARY INFORMATION WHICH IS
* THE PROPERTY OF MENTOR GRAPHICS CORPORATION OR ITS LICENSORS AND IS
* SUBJECT TO LICENSE TERMS.
*
*************************************************************************/

/*************************************************************************
* FILE NAME                                     VERSION
*
*       memcmp.c                                Nucleus Common Library 1.1
*
* DESCRIPTION
*
*       This file contains the implementation of NCL_memcmp.
*
* DATA STRUCTURES
*
*       None.
*
* FUNCTIONS
*
*       NCL_memcmp
*
* DEPENDENCIES
*
*       ncl.h
*       string.h
*       nucleus.h
*
************************************************************************/

#define NU_NCL_SOURCE_FILE

#include "ncl\inc\ncl.h"
#include "ncl\inc\string.h"
#include "plus\nucleus.h"                                /* MMU Support */

/*************************************************************************
*
*   FUNCTION
*
*       NCL_memcmp
*
*   DESCRIPTION
*
*      Copies a section of memory
*
*   INPUTS
*
*       s1                  Memory to compare.
*       s2                  Memory to compare.
*       n                   Number of bytes to compare.
*
*   OUTPUTS
*
*       int                 0 means s1 == s2;
*                           -1 means s1 < s2;
*                           1 means s1 > s2
*
*************************************************************************/

int NCL_memcmp (const void *s1, const void *s2, size_t n)
{
    register unsigned char *p1 = (unsigned char*) s1;
    register unsigned char *p2 = (unsigned char*) s2;
    register unsigned char *end = p1 + n;

    while (p1 < end)
    {
        if (*p1 != *p2)
        {
            if (*p1 < *p2)
            {
                return (-1);
            }
            else
            {
                return (1);
            }
        }
        ++p1;
        ++p2;
    }

    return (0);               /* memory blocks are equal */
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -