memcmp()函数用于:比较两个内存块
函数介绍
函数声明:int memcmp ( const void * ptr1, const void * ptr2, size_t num );
参数:
ptr1:指向内存块的指针。
ptr2:指向内存块的指针。
数字:要比较的字节数。
返回值:
<0:
在两个内存块中不匹配的第一个字节在ptr1中的值低于在 ptr2中的值(如果计算为无符号 char值)
0:
两个内存块的内容相等
>0:
在两个内存块中不匹配的第一个字节在ptr1中的值大于在 ptr2中的值(如果计算为无符号字符值)头 文 件:#include <string.h>
用法示例
/* memcmp example */#include <stdio.h>#include <string.h>int main (){char buffer1[] = "DWgaOtP12df0";char buffer2[] = "DWGAOTP12DF0";int n;n=memcmp ( buffer1, buffer2, sizeof(buffer1) );if (n>0) printf ("'%s' is greater than '%s'.\n",buffer1,buffer2);else if (n<0) printf ("'%s' is less than '%s'.\n",buffer1,buffer2);else printf ("'%s' is the same as '%s'.\n",buffer1,buffer2);return 0;}
函数解释
将ptr1所指向的内存块的前num个字节与ptr2指向的第一个字节数进行比较,如果它们都匹配,则返回零,或者如果不匹配,则返回与零不同的值,表示哪个值更大。
请注意,与strcmp不同,该函数在找到空字符后不会停止比较。
memcmp函数详解 看这一篇就够了-C语言(函数讲解 函数实现 使用用法举例 作用 自己实现函数 )