La fonction wcscoll () en C ++ compare deux chaînes terminées par null. La comparaison est basée sur les paramètres régionaux actuels définis par la catégorie LC_COLLATE.
La fonction wcscoll () est définie dans le fichier d'en-tête.
prototype wcscoll ()
int wcscoll (const wchar_t * lhs, const wchar_t * rhs);
La fonction wcscoll () prend deux arguments: lhs et rhs. Il compare le contenu de lhs et rhs en fonction de la locale actuelle de la catégorie LC_COLLATE .
Paramètres wcscoll ()
- lhs et rhs: pointeur vers les chaînes larges terminées par null à comparer.
wcscoll () Valeur de retour
La fonction wcscoll () renvoie un:
- valeur positive si le premier caractère différent de lhs est supérieur au caractère correspondant de rhs.
- valeur négative si le premier caractère différent de lhs est inférieur au caractère correspondant de rhs.
- 0 si lhs et rhs sont égaux.
Exemple: comment fonctionne la fonction wcscoll ()?
#include #include #include using namespace std; void compare(const wchar_t* p1, const wchar_t* p2) ( if(wcscoll(p1, p2) < 0) wcout << p1 << L" precedes " << p2 < 0) wcout << p2 << L" precedes " << p1 << ''; else wcout << p2 << L" equals " << p1 << ''; ) int main() ( wchar_t str1() = L"årtist"; wchar_t str2() = L"äpple"; setlocale(LC_ALL, "en_US.utf8"); wcout << L"In the American locale: "; compare(str1, str2); setlocale(LC_ALL, "sv_SE.utf8"); wcout << L"In the Swedish locale: "; compare(str1, str2); return 0; )
Lorsque vous exécutez le programme, la sortie sera:
Dans le local américain: äpple précède årtist Dans le local suédois: årtist précède äpple