欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

C语言第二十七弹---内存函数-memcmp 函数的使用

最编程 2024-02-23 12:27:15
...
int memcmp ( const void * ptr1, const void * ptr2, size_t num );
较从ptr1和ptr2指针指向的位置开始,向后的num个字节

比较两个内存块
将 ptr1 指向的内存块的第一个 num 个字节与 ptr2 指向的第一个 num 个字节进行比较,如果它们都匹配,则返回零,如果它们不匹配,则返回一个与零不同的值,表示哪个值更大。

请注意,与 strcmp 不同,该函数在找到 null 字符后不会停止比较。

返回值如下:
<0  在两个内存块中不匹配的第一个字节在 ptr1 中的值低于 ptr2 中的值(如果计算为 unsigned char 值)
0    两个存储块的内容相等
>0  两个内存块中不匹配的第一个字节在 ptr1 中的值大于 ptr2 中的值(如果计算为无符号字符值)
#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;
}

上一篇: 产品经理必知:深入解析阿里巴巴P级职位的层级与具体需求

下一篇: 【全面揭示:多家企业独特的人力资源管理内部宝典——揭秘阿里巴巴人才吸引力秘诀】

推荐阅读