wcsncmp
|
Definiert im Header
<wchar.h>
|
||
|
int
wcsncmp
(
const
wchar_t
*
lhs,
const
wchar_t
*
rhs,
size_t
count
)
;
|
(seit C95) | |
Vergleicht bis zu
count
Breitzeichen von zwei nullterminierten Breitzeichenketten. Der Vergleich erfolgt lexikographisch.
Das Vorzeichen des Ergebnisses ist das Vorzeichen der Differenz zwischen den Werten des ersten Paares von Breitzeichen, die sich in den verglichenen Zeichenketten unterscheiden.
Das Verhalten ist undefiniert, falls
lhs
oder
rhs
keine Zeiger auf nullterminierte Zeichenketten sind.
Inhaltsverzeichnis |
Parameter
| lhs, rhs | - | Zeiger auf die nullterminierten Breitzeichen-Zeichenketten zum Vergleichen |
| count | - | maximale Anzahl der zu vergleichenden Zeichen |
Rückgabewert
Negativer Wert, wenn
lhs
vor
rhs
in lexikografischer Reihenfolge erscheint.
Null, wenn
lhs
und
rhs
gleich sind.
Positiver Wert, wenn
lhs
nach
rhs
in lexikographischer Reihenfolge erscheint.
Hinweise
Diese Funktion ist im Gegensatz zu wcscoll und wcsxfrm nicht gebietsschemabezogen.
Beispiel
#include <stdio.h> #include <wchar.h> #include <locale.h> void demo(const wchar_t *lhs, const wchar_t *rhs, int sz) { int rc = wcsncmp(lhs, rhs, sz); if(rc == 0) printf("First %d characters of [%ls] equal [%ls]\n", sz, lhs, rhs); else if(rc < 0) printf("First %d characters of [%ls] precede [%ls]\n", sz, lhs, rhs); else if(rc > 0) printf("First %d characters of [%ls] follow [%ls]\n", sz, lhs, rhs); } int main(void) { const wchar_t *str1 = L"안녕하세요"; const wchar_t *str2 = L"안녕히 가십시오"; setlocale(LC_ALL, "en_US.utf8"); demo(str1, str2, 5); demo(str2, str1, 8); demo(str1, str2, 2); }
Ausgabe:
First 5 characters of [안녕하세요] precede [안녕히 가십시오] First 8 characters of [안녕히 가십시오] follow [안녕하세요] First 2 characters of [안녕하세요] equal [안녕히 가십시오]
Referenzen
- C11-Standard (ISO/IEC 9899:2011):
-
- 7.29.4.4.3 Die wcsncmp-Funktion (S. 434)
- C99-Standard (ISO/IEC 9899:1999):
-
- 7.24.4.4.3 Die wcsncmp-Funktion (S. 380)
Siehe auch
|
(C95)
|
vergleicht zwei Breitzeichenketten
(Funktion) |
|
(C95)
|
vergleicht eine bestimmte Anzahl von Breitzeichen aus zwei Arrays
(Funktion) |
|
(C95)
|
vergleicht zwei Breitzeichenketten gemäß der aktuellen Locale
(Funktion) |
|
C++-Dokumentation
für
wcsncmp
|
|