wcscat, wcscat_s
From cppreference.net
|
Definiert in Header
<wchar.h>
|
||
| (1) | ||
|
wchar_t
*
wcscat
(
wchar_t
*
dest,
const
wchar_t
*
src
)
;
|
(seit C95)
(bis C99) |
|
|
wchar_t
*
wcscat
(
wchar_t
*
restrict
dest,
const
wchar_t
*
restrict
src
)
;
|
(seit C99) | |
|
errno_t wcscat_s
(
wchar_t
*
restrict
dest, rsize_t destsz,
const wchar_t * restrict src ) ; |
(2) | (seit C11) |
1)
Hängt eine Kopie der breiten Zeichenkette, auf die
src
zeigt, an das Ende der breiten Zeichenkette an, auf die
dest
zeigt. Das breite Zeichen
src[0]
ersetzt den Nullterminator am Ende von
dest
. Die resultierende breite Zeichenkette ist nullterminiert. Das Verhalten ist undefiniert, wenn das Zielarray nicht groß genug für die Inhalte von sowohl
str
als auch
dest
und den abschließenden Nullbreitzeichen ist. Das Verhalten ist undefiniert, wenn die Zeichenketten überlappen.
2)
Gleich wie
(1)
, außer dass es den Rest des Zielarrays (ab dem letzten geschriebenen Zeichen bis
destsz
) mit nicht spezifizierten Werten überschreiben kann und dass die folgenden Fehler zur Laufzeit erkannt werden und die aktuell installierte
Constraint-Handler
-Funktion aufrufen:
-
-
srcoderdestist ein Nullzeiger -
destszist null oder größer als RSIZE_MAX / sizeof ( wchar_t ) -
Es gibt keinen Nullterminator in den ersten
destszBreitzeichen vondest -
Trunkierung würde auftreten (der verfügbare Platz am Ende von
destwürde nicht jedes Breitzeichen, einschließlich des Nullterminators, vonsrcaufnehmen) - Überlappung würde zwischen Quell- und Zielzeichenfolgen auftreten
-
-
Wie bei allen grenzprüfenden Funktionen ist
wcscat_snur garantiert verfügbar, wenn __STDC_LIB_EXT1__ durch die Implementierung definiert ist und wenn der Benutzer __STDC_WANT_LIB_EXT1__ auf die Integer-Konstante 1 setzt, bevor <wchar.h> eingebunden wird.
Inhaltsverzeichnis |
Parameter
| dest | - | Zeiger auf den nullterminierten Breitzeichen-String, an den angehängt werden soll |
| src | - | Zeiger auf den nullterminierten Breitzeichen-String, von dem kopiert werden soll |
| destsz | - | maximale Anzahl der zu schreibenden Zeichen, typischerweise die Größe des Zielpuffers |
Rückgabewert
1)
gibt eine Kopie von
dest
zurück
2)
gibt bei Erfolg Null zurück, gibt bei Fehler einen Wert ungleich Null zurück. Außerdem wird bei Fehler
L
'
\0
'
in
dest
[
0
]
geschrieben (sofern
dest
kein Nullzeiger ist oder
destsz
nicht Null oder größer als
RSIZE_MAX
/
sizeof
(
wchar_t
)
ist).
Beispiel
Diesen Code ausführen
Ausgabe:
Земля, прощай. В добрый путь.
Referenzen
- C17-Standard (ISO/IEC 9899:2018):
-
- 7.29.4.3.1 Die wcscat-Funktion (S: 315)
-
- K.3.9.2.2.1 Die wcscat_s-Funktion (S: 466)
- C11-Standard (ISO/IEC 9899:2011):
-
- 7.29.4.3.1 Die wcscat-Funktion (S: 432)
-
- K.3.9.2.2.1 Die wcscat_s-Funktion (S: 642-643)
- C99-Standard (ISO/IEC 9899:1999):
-
- 7.24.4.3.1 Die wcscat-Funktion (S: 378)
Siehe auch
|
(C95)
(C11)
|
hängt eine bestimmte Anzahl von Breitzeichen von einer Breitzeichenkette an eine andere an
(Funktion) |
|
(C11)
|
verkettet zwei Zeichenketten
(Funktion) |
|
(C95)
(C11)
|
kopiert eine Breitzeichenkette in eine andere
(Funktion) |
|
C++-Dokumentation
für
wcscat
|
|