wpC语言函数:内存函数memcmp()以及函数实现与使用。
memcmp():
头文件:#include <string.h>
作用:
进行内存比较。
参数:
解释:ptr1和ptr2是指针,从这个两个指针开始往后num个字节,将两个数据块进行比较。
返回值:
arr1:
arr2:
通过IEEE验证一下:
数据没问题。可以看到,如果使用memcmp在第7个字节上,可以找到不同。
#define _CRT_SECURE_NO_WARNINGS
#include <string.h>
#include <stdio.h>
int main()
{
float arr1[5] = { 1.0, 2.0, 3.0, 4.0, 5.0 };
float arr2[2] = { 1.0, 3.0 };
int ret = memcmp(arr1, arr2,7);
printf("%d\n", ret);
return 0;
}
可以看到,arr1第七个字节是00,arr2第七个字节是40,因此arr1比arr2小,因此会返回<0的数。
结果:
#define _CRT_SECURE_NO_WARNINGS
#include <string.h>
#include <stdio.h>
int main()
{
float arr1[5] = { 1.0, 2.0, 3.0, 4.0, 5.0 };
float arr2[2] = { 1.0, 3.0 };
int ret = memcmp(arr2, arr1,7);
printf("%d\n", ret);
return 0;
}
尝试arr1,与arr2反过来,结果:
#define _CRT_SECURE_NO_WARNINGS
#include <string.h>
#include <stdio.h>
int main()
{
float arr1[5] = { 1.0, 2.0, 3.0, 4.0, 5.0 };
float arr2[2] = { 1.0, 3.0 };
int ret = memcmp(arr2, arr1,6);
printf("%d\n", ret);
return 0;
}
如果值比较前6个字节是一样的,结果: