Hàm memcmp() trong C | Thư viện C chuẩn




Hàm memcmp() trong C

Hàm int memcmp(const void *str1, const void *str2, size_t n)) so sánh n byte đầu của hai chuỗi str1str2.

Khai báo hàm memcmp() trong C

Dưới đây là phần khai báo cho memcmp() trong C:

int memcmp(const void *str1, const void *str2, size_t n)

Tham số

  • str1 -- Đây là con trỏ tới một khối bộ nhớ.

  • str2 -- Đây là con trỏ tới một khối bộ nhớ.

  • n -- Đây là số byte để được so sánh.

Trả về giá trị

  • Nếu trả về giá trị < 0 thì hàm này chỉ rằng str1 là ngắn hơn str2.

  • Nếu trả về giá trị > 0 thì hàm này chỉ rằng str2 là ngắn hơn str1.

  • Nếu trả về giá trị = 0 thì hàm này chỉ rằng str1 là bằng str2.

Ví dụ

Chương trình C sau minh họa cách sử dụng của memcmp() trong C:

#include 
#include int main ()
{
   char str1[15];
   char str2[15];
   int ret;   memcpy(str1, "abcdef", 6);
   memcpy(str2, "ABCDEF", 6);   ret = memcmp(str1, str2, 5);   if(ret > 0)
   {
      printf("Chuoi str2 la ngan hon chuoi str1");
   }
   else if(ret < 0) 
   {
      printf("Chuoi str1 la ngan hon chuoi str2");
   }
   else 
   {
      printf("Chuoi str1 la bang chuoi str2");
   }
   
   return(0);
}

Biên dịch và chạy chương trình C trên sẽ cho kết quả:

Hàm memcmp trong C

Các bài Thư viện C phổ biến khác tại VietJack:


string-h-trong-c.jsp