strcoll函数
概要:
#include <string.h> int strcoll(const char *s1, const char *s2);
描述:
该函数根据当前语言环境LC_COLLATE类别定义的排序顺序比较参数s1指向字符串和参数s2指向字符串的大小。
每种语言都有一套规则规定:如何将字符串排序到有序列表中。排序规则是指如何确定字符串的排序顺序。排序规则是字典顺序。当前语言环境的LC_COLLATE类别提供了排序规则的定义。
标准"C"语言环境中,字符集顺序和字典编纂字符顺序相同,这种情况下对于相同的字符串调用strcoll函数与调用strcmp函数的结果相同。
有些语言环境中,字符集顺序和字典编纂字符顺序存在差异,这种情况下对于相同的字符串调用strcoll函数与调用strcmp函数的结果可能存在差异。这种情况下如果要执行按字典顺序比较,应使用strcoll函数。
具体实现中,strcoll函数可能会隐式地将多字节字符串中的字符映射为字节序列(该字节序列表示字符串在当前语言环境排序序列中的位置。),然后比较字节序列。
参数:
const char *s1
指向字符串的指针。
const char *s2
指向字符串的指针。
返回值:
根据参数s1指向字符串是大于、等于还是小于参数s2指向字符串,函数返回一个大于、等于或者小于0的整数。
范例:
|
|
输出:
Current locale: C
strOne is greater than strTwo.
Current locale: Chinese (Simplified)_China.936
strOne is less than strTwo.
相关内容:
memcmp | 比较内存区域字符序列的函数。 |
strcmp | 比较字符串的函数。 |
strncmp | 比较字符串前n个字符的函数。 |
strxfrm | 转换字符串的函数。 |