std:: wcsncmp
|
Definiert in Header
<cwchar>
|
||
|
int
wcsncmp
(
const
wchar_t
*
lhs,
const
wchar_t
*
rhs,
std::
size_t
count
)
;
|
||
Vergleicht bis zu count Breitzeichen von zwei nullterminierten Breitzeichenketten. Der Vergleich erfolgt lexikografisch.
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, wenn 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 der lexikographischen Ordnung erscheint.
Null, wenn lhs und rhs gleich sind.
Positiver Wert, wenn lhs nach rhs in der lexikographischen Reihenfolge erscheint.
Beispiel
#include <clocale> #include <cwchar> #include <iostream> #include <locale> void demo(const wchar_t* lhs, const wchar_t* rhs, int sz) { int rc = std::wcsncmp(lhs, rhs, sz); if (rc == 0) std::wcout << "First " << sz << " characters of [" << lhs << "] equal [" << rhs << "]\n"; else if (rc < 0) std::wcout << "First " << sz << " characters of [" << lhs << "] precede [" << rhs << "]\n"; else if (rc > 0) std::wcout << "First " << sz << " characters of [" << lhs << "] follow [" << rhs << "]\n"; } int main() { const wchar_t str1[] = L"안녕하세요"; const wchar_t str2[] = L"안녕히 가십시오"; std::setlocale(LC_ALL, "en_US.utf8"); std::wcout.imbue(std::locale("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 [안녕히 가십시오]
Siehe auch
|
vergleicht eine bestimmte Anzahl von Zeichen aus zwei Zeichenketten
(Funktion) |
|
|
vergleicht zwei Wide-Strings
(Funktion) |
|
|
vergleicht eine bestimmte Anzahl von Wide-Zeichen aus zwei Arrays
(Funktion) |
|
|
vergleicht zwei Wide-Strings gemäß der aktuellen Locale
(Funktion) |
|
|
C-Dokumentation
für
wcsncmp
|
|