说明C语言中memcmp和memicmp函数之间的区别
Memcmp() 和 memicmp() 将两个内存块的前n个字节进行比较。
memcmp() 将其作为无符号字符进行比较。
memicmp() 将其作为字符进行比较,但忽略大小写。
这两个函数都返回一个整数值。
两个内存缓冲区相等(返回 0)。
第一个缓冲区大于第二个(返回 >0)。
第一个缓冲区小于第二个(返回<0)。
程序
以下程序展示了memcmp() 和 memicmp() 函数的用法。
#include<conio.h> #include<mem.h> main(){ char st1[]="This is C Programming language"; char st2[]="this is c programming"; int result; result=memcmp(st1,st2,strlen(st2)); printf("
1. result after comparing buffer using memcmp"); check(result); result=memicmp(st1,st2,strlen(st2)); printf("
2. result after comparing buffer using memicmp"); check(result); } check(int x){ if(x==0) printf(" buffer st1 and st2 hold same data
"); if(x>0) printf("buffer st1 is bigger than buffer st2
"); if(x<0) printf(“ buffer st1 is less than buffer st2
"); }
输出
您将看到以下输出 -
1. result after comparing buffer using memcmp buffer st1 is less than buffer st2 2. result after comparing buffer using memicmp buffer st1 and st2 hold same data
广告