02/09/2018, 22:08

Hàm strcoll() trong C

Hàm int strcoll(const char *str1, const char *str2) so sánh chuỗi str1 và str2. Kết quả phụ thuộc vào thiết lập LC_COLLATE. Khai báo hàm strcoll() trong C Dưới đây là phần khai báo cho strcoll() trong C: int strcoll ( const char * str1 , ...

Hàm int strcoll(const char *str1, const char *str2) so sánh chuỗi str1 và str2. Kết quả phụ thuộc vào thiết lập LC_COLLATE.

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

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

int strcoll(const char *str1, const char *str2)

Tham số

str1 -- Đây là chuỗi đầu tiên để được so sánh.

str2 -- Đây là chuỗi thứ hai để được so sánh.

Trả về giá trị

Hàm này trả về các giá trị sau:

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

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

Nếu giá trị trả về = 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 strcoll() trong C:

#include <stdio.h>
#include <string.h>

int main ()
{
   char str1[15];
   char str2[15];
   int ret;

   strcpy(str1, "abc");
   strcpy(str2, "ABC");

   ret = strcoll(str1, str2);

   if(ret > 0)
   {
      printf("Chuoi str1 la ngan hon chuoi str2");
   }
   else if(ret < 0) 
   {
      printf("Chuoi str2 la ngan hon chuoi str1");
   }
   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ả:

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

Theo Tutorialspoint

Bài trước: Hàm strncmp() trong C

Bài tiếp: Hàm strcpy() trong C

0