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”为止
此函数与函数相同strcmp(),它比较两个字符串并根据比较值返回一个整数。
下面给出的是strcoll()函数的声明-
int strcoll(const char *string1, const char *string2)
这里,
string1指的是第一个字符串。
string2指的是第二个字符串。
当字符串string1中第一个不匹配的char的ASCII值大于string2时,> 0。
<当字符串string1中第一个不匹配的char的ASCII值小于string2时。
如果两个字符串相等,则为= 0。
以下示例显示了strcoll()功能的用法。
#include <stdio.h> #include <string.h> int main () { char string1[20]; char string2[20]; int final; strcpy(string1, "WELCOME"); strcpy(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; }输出结果
执行以上程序后,将产生以下结果-
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