說明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

更新於:15-3-2021

309 個瀏覽量

開啟你的 職業

透過完成課程獲得認證

開始學習
廣告