wstring-Subroutine

Zweck

Operationen für Zeichenfolgen mit breiten Zeichen ausführen.

Bibliothek

Standard-C-Bibliothek (libc.a)

Syntax

#include <wstring.h>

wchar_t *wstrcat (wstring Subroutine) (XString1, XString2)
wchar_t *XString1, *XString2;

wchar_t * wstrncat (XString, XString2, Number)
wchar_t *XString1, *XString2;
int Number;

int  wstrcmp (XString1, XString2)
wchar_t *XString1, *XString2;

int  wstrncmp (XString1, XString2, Number)
wchar_t *XString1, *XString2;
int Number;

wchar_t * wstrcpy (XString1, XString2)
wchar_t *XString1, *XString2;

wchar_t * wstrncpy (XString1, XString2, Number)
wchar_t *XString1, *XString2;
int Number;

int  wstrlen (XString)
wchar_t *XString;

wchar_t * wstrchr (XString, Number)
wchar_t *XString;
int Number;

wchar_t * wstrrchr (XString, Number)
wchar_t *XString;
int Number;

wchar_t * wstrpbrk (XString1, XString2)
wchar_t *XString1, XString2;

int  wstrspn (XString1, XString2)
wchar_t *XString1, XString2;

int  wstrcspn (XString1, XString2)
wchar_t *XString1, XString2;

wchar_t * wstrtok (XString1, XString2)
wchar_t *XString1, XString2;

wchar_t * wstrdup (XString1)
wchar_t *XString1;

Beschreibung

Die WString -Subroutinen kopieren, vergleichen und hängen Zeichenfolgen im Speicher an und bestimmen Position, Größe und Vorhandensein von Zeichenfolgen im Speicher. Für diese Subroutinen ist eine Zeichenfolge ein Array von WChar_T -Zeichen, das durch ein Nullzeichen beendet wird. Die WString -Subroutinen arbeiten parallel zu den Zeichenfolge -Subroutinen, arbeiten jedoch mit Zeichenfolgen des Typs WChar_T und nicht mit dem Typ Zeichen, es sei denn, dies ist im Folgenden ausdrücklich erwähnt.

Die Parameter XString1, XString2und XString (Zeichenfolge) verweisen auf Zeichenfolgen des Typs WChar_T (Arrays von WCHAR Zeichen, die mit einem WChar_T Nullzeichen beendet werden).

Die Subroutinen WSTRCAT, Wstrncat, WSTRCPYund Wstrncpy ändern alle den Parameter XString1 . Sie prüfen nicht auf einen Überlauf des Arrays, auf das XString1verweist. Alle Zeichenfolgenbewegungen werden durch Breitzeichen ausgeführt. Überlappende Verschiebungen nach links funktionieren wie erwartet, aber überlappende Verschiebungen nach rechts können zu unerwarteten Ergebnissen führen. Alle diese Subroutinen werden in der Datei wstring.h deklariert.

Die Subroutine WSTRCAT hängt eine Kopie der Zeichenfolge WChar_T , auf die durch den Parameter XString2 verwiesen wird, an das Ende der Zeichenfolge WChar_T an, auf die durch den Parameter XString1 verwiesen wird. Die Subroutine WSTRCAT gibt einen Zeiger auf das auf null endende Ergebnis zurück.

Die Subroutine Wstrncat kopiert maximal den Wert des Parameters Zahl von wchar _ t Zeichen im Parameter XString2 an das Ende der Zeichenfolge WChar_T , auf die der Parameter XString1 verweist. Das Kopieren wird vor dem Zahl WChar_T -Zeichen gestoppt, wenn ein Nullzeichen in der Zeichenfolge gefunden wird, auf die der Parameter XString2 verweist. Die Subroutine Wstrncat gibt einen Zeiger auf das auf null endende Ergebnis zurück.

Die Subroutine Befehl 'wstrcmp' vergleicht lexikografisch die Zeichenfolge WChar_T , auf die durch den Parameter XString1 verwiesen wird, mit der Zeichenfolge WChar_T , auf die durch den Parameter XString2 verwiesen wird. Die Subroutine Befehl 'wstrcmp' gibt einen Wert zurück, der wie folgt lautet:

  • Kleiner als 0, wenn XString1 kleiner als XString2 ist
  • Gleich 0, wenn XString1 gleich XString2 ist
  • Größer als 0, wenn XString1 größer als XString2 ist

Die Subroutine Befehl 'wstrncmp' führt denselben Vergleich wie Befehl 'wstrcmp'durch, vergleicht jedoch höchstens den Wert des Parameters Zahl von Paaren von WCHAR -Zeichen. Die Vergleiche basieren auf Sortierwerten, die durch die Ländereinstellungskategorie LC_COLLATE und die Variable SPRACHE bestimmt werden.

Die Subroutine WSTRCPY kopiert die Zeichenfolge, auf die durch den Parameter XString2 verwiesen wird, in das Array, auf das durch den Parameter XString1 verwiesen wird. Der Kopiervorgang wird gestoppt, wenn WChar_T null kopiert wird. Die Subroutine WSTRCPY gibt den Wert des Parameters XString1 zurück.

Die Subroutine Wstrncpy kopiert den Wert des Parameters Zahl von WChar_T Zeichen aus der Zeichenfolge, auf die der Parameter XString2 verweist, in das Array WCHAR_T , auf das der Parameter XString1 verweist. Wenn XString2 kleiner als Zahl WChar_T Zeichen ist, Wstrncpy füllt XString1 mit abschließenden Nullzeichen auf, um Zahl WChar_T Zeichen zu füllen. Wenn XString2 Zahl oder mehr WChar_T Zeichen lang ist, werden nur die ersten Zahl WChar_T Zeichen kopiert. Das Ergebnis wird nicht mit einem Nullzeichen beendet. Die Subroutine Wstrncpy gibt den Wert des Parameters XString1 zurück.

Die Subroutine Wstrlen gibt die Anzahl der WChar_T -Zeichen in der Zeichenfolge zurück, auf die durch den Parameter XString (Zeichenfolge) verwiesen wird, ohne die abschließende Null WChar_T .

Die Subroutine WSTRCHR gibt einen Zeiger auf das erste Vorkommen von WChar_T zurück, das durch den Parameter Zahl in der Zeichenfolge WChar_T angegeben wird, auf die durch den Parameter XString (Zeichenfolge) verwiesen wird. Ein Nullzeiger wird zurückgegeben, wenn WChar_T nicht in der Zeichenfolge WChar_T vorkommt. Der WChar_T -Nullwert, der eine Zeichenfolge beendet, wird als Teil der Zeichenfolge WChar_T betrachtet.

Die Subroutine Wstrrchr gibt einen Zeiger auf das letzte Vorkommen des Zeichens zurück, das durch den Parameter Zahl in der Zeichenfolge WChar_T angegeben wird, auf die durch den Parameter XString (Zeichenfolge) verwiesen wird. Ein Nullzeiger wird zurückgegeben, wenn WChar_T nicht in der Zeichenfolge WChar_T vorkommt. Der WChar_T -Nullwert, der eine Zeichenfolge beendet, wird als Teil der Zeichenfolge WChar_T betrachtet.

Die Subroutine WSTRPBRK gibt einen Zeiger auf das erste Vorkommen in der Zeichenfolge WChar_T zurück, auf die durch den Parameter XString1 ein beliebiger Codepunkt aus der Zeichenfolge verweist, auf die durch den Parameter XString2 verwiesen wird. Ein Nullzeiger wird zurückgegeben, wenn kein Zeichen übereinstimmt.

Die Subroutine WSTRSPN gibt die Länge des Anfangssegments der Zeichenfolge zurück, auf die der Parameter XString1 verweist, der ausschließlich aus Codepunkten aus der WChar_T -Zeichenfolge besteht, auf die der Parameter XString2 verweist.

Die Subroutine WSTRCSPN gibt die Länge des Anfangssegments der WChar_T -Zeichenfolge zurück, auf die durch den Parameter XString1 verwiesen wird, der ausschließlich aus Codepunkten Nicht aus der Zeichenfolge WChar_T besteht, auf die durch den Parameter XString2 verwiesen wird.

Die Subroutine Wstrtok gibt einen Zeiger auf ein Vorkommen eines Texttokens in der Zeichenfolge zurück, auf die der Parameter XString1 verweist. Der Parameter XString2 gibt eine Gruppe von Codepunkten als Tokenbegrenzer an. Wenn der Parameter XString1 einen anderen Wert als null hat, liest die Subroutine Wstrtok die Zeichenfolge, auf die der Parameter XString1 verweist, bis sie einen der Begrenzercodepunkte findet, die im Parameter XString2 angegeben sind. Anschließend wird eine WChar_T Null in der Zeichenfolge WChar_T gespeichert, wobei der Begrenzercodepunkt ersetzt wird, und es wird ein Zeiger auf die erste WChar_T des Texttokens zurückgegeben. Die Subroutine Wstrtok verfolgt ihre Position in der Zeichenfolge WChar_T , sodass nachfolgende Aufrufe mit einem Nullparameter XString1 die Zeichenfolge WChar_T durchgehen. Die durch den Parameter XString2 angegebenen Begrenzer können für nachfolgende Aufrufe von Wstrtokgeändert werden. Wenn keine Token in der Zeichenfolge WChar_T verbleiben, auf die der Parameter XString1 verweist, gibt die Subroutine Wstrtok einen Nullzeiger zurück.

Die Subroutine Wstrdup gibt einen Zeiger auf eine WChar_T -Zeichenfolge zurück, die ein Duplikat der WChar_T -Zeichenfolge ist, auf die der Parameter XString1 verweist. Der Speicherplatz für die neue Zeichenfolge wird mit der Subroutine Malloc zugeordnet. Wenn eine neue Zeichenfolge nicht erstellt werden kann, wird ein Nullzeiger zurückgegeben.