首页 > 文章列表 > 在C语言中,memcmp和memicmp函数之间的区别是什么?

在C语言中,memcmp和memicmp函数之间的区别是什么?

C语言中的比较函数:memcmp和memicmp
423 2023-08-24

Memcmp() and memicmp() compares first n bytes of two blocks of memory.

  • memcmp() performs comparison as unsigned characters.

  • memicmp() performs comparison as characters but, ignore upper case or lower case letters.

  • Both functions return an integer value.

  • Two memory buffers are equal (returns 0).

  • First buffer is greater than second (returns >0).

  • First buffer is less than second(returns<0).

Program

The following program shows the usage of memcmp() and memicmp() functions.

#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