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