ฟังก์ชันไลบรารี C int strcoll(const char *str1, const char *str2) เปรียบเทียบสตริง str1 ถึง str2 . ผลลัพธ์จะขึ้นอยู่กับการตั้งค่า LC_COLLATE ของตำแหน่ง
อาร์เรย์ของอักขระเรียกว่าสตริง
ประกาศ
รับด้านล่างเป็นการประกาศของอาร์เรย์ -
char stringname [size];
ตัวอย่างเช่น − char string[50]; สตริงที่มีความยาว 50 ตัวอักษร
การเริ่มต้น
- การใช้ค่าคงที่อักขระตัวเดียว −
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’} - การใช้ค่าคงที่สตริง −
char string[10] = "Hello":;
กำลังเข้าถึง − มีสตริงควบคุม "%s" ที่ใช้สำหรับเข้าถึงสตริงจนกว่าจะพบ '\0'
ฟังก์ชัน Strcoll()
ฟังก์ชันนี้เหมือนกับฟังก์ชัน strcmp() โดยจะเปรียบเทียบสองสตริงและคืนค่าจำนวนเต็มตามค่าของการเปรียบเทียบ
ประกาศ
รับด้านล่างเป็นการประกาศของฟังก์ชัน strcoll() -
int strcoll(const char *string1, const char *string2)
ที่นี่
- string1 หมายถึง สตริงแรก
- string2 หมายถึง สตริงที่สอง
คืนค่าของ strcoll()
-
> 0 เมื่อค่า ASCII ของถ่านตัวแรกที่ไม่ตรงกันในสตริง string1 มากกว่า string2
-
<เมื่อค่า ASCII ของถ่านตัวแรกที่ไม่ตรงกันในสตริง string1 น้อยกว่า string2
-
=0 ถ้าทั้งสองสตริงเท่ากัน
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงการใช้ฟังก์ชัน strcoll()
#include <stdio.h>
#include <string.h>
int main () {
char string1[20];
char string2[20];
int final;
strcpy(string1, "WELCOME");
strcpy(string2, "Welcome to the world!");
final = strcoll(string1, string2);
if(final > 0){
printf(" string1 is greater than string2");
} else if(final < 0) {
printf("string1 is less than string2");
} else {
printf("string1 and string2 are equal");
}
return 0;
} ผลลัพธ์
เมื่อโปรแกรมข้างต้นทำงาน มันจะให้ผลลัพธ์ดังต่อไปนี้ −
string1 is less than string2
ตัวอย่าง
มาดูอีกโปรแกรม
ต่อไปนี้เป็นโปรแกรมสำหรับเปรียบเทียบสองสตริงโดยใช้ strcoll ที่รันไทม์ -
#include <stdio.h>
int main (){
char string1[20];
char string2[20];
int final;
printf("enter string1:\n");
gets(string1);
printf("enter string2:\n");
gets(string2);
final = strcoll(string1, string2);
if(final > 0){
printf(" string1 is greater than string2");
}
else if(final < 0){
printf("string1 is less than string2");
}
else{
printf("string1 and string2 are equal");
}
return 0;
} ผลลัพธ์
เมื่อโปรแกรมข้างต้นทำงาน มันจะให้ผลลัพธ์ดังต่อไปนี้ −
enter string1: Tutorails Point enter string2: Point string1 is greater than string2