====== strcoll() ====== strcoll ist definiert in der ''[[start|string]]'', die in C über ''string.h'', bzw. in C++ über ''cstring'' eingebunden wird. ===== Funktion ===== strcoll() vergleicht zwei Strings und gibt aus, welcher String größer ist. Hierbei wird entsprechend der locale-Einstellungen (siehe [[c:lib:locale:setlocale|setlocale()]]) unter Verwendung on LC:COLLATE) entschieden, wie große und kleine Buchstaben verglichen werden, also ob ein kleiner Buchstabe größer als der entsprechende große Buchstabe ist, ob er gleichwertig oder kleiner ist. Die Funktion vergleicht Buchstabe für Buchstabe der jeweiligen Strings und endet, sobald bei mindestens einem String ein Null-Byte gefunden wurde. Bis auf die Berücksichtigung der Groß-/Kleinschreibung entspricht strcoll() damit [[strcmp|strcmp()]]. ===== Signatur ===== #include int strcoll( char const * first, char const * second ); **first**: erster String \\ **second**: zweiter, zu vergleichender Speicherblock \\ **Return value**: Ein Integer, das wie folgt interpretiert wird ^ Rückgabewert ^ Bedeutung ^ | 0 | Die verglichenen Zeichen hatten identische Werte | | > 0 | Die verglichenen Zeichen waren nicht identisch, der erste unterschiedliche Wert war bei ''first'' größer als bei ''second'' | | < 0 | Die verglichenen Zeichen waren nicht identisch, der erste unterschiedliche Wert war bei ''first'' kleiner als bei ''second'' | ===== Fehlerquellen ===== Beide Strings müssen mit einem Nullbyte abgeschlossen werden. ===== Beispiel ===== FIXME ===== siehe auch ===== [[c:lib:string:start|string]]: [[c:lib:string:strcmp|strcmp()]], [[c:lib:string:memchr|memchr()]], [[c:lib:string:memcpy|memcpy()]], [[c:lib:string:memset|memset()]], [[c:lib:string:strncmp|stncmp()]] \\ [[c:lib:locale:start|locale]]: [[c:lib:locale:setlocale|setlocale()]]