Füge den Inhalt eines char*-Strings an einen anderen char*-String an, der Inhalt von s2 wird an s1 angefügt.

Füge den Inhalt eines char*-Strings an einen anderen char*-String an, der Inhalt von s2 wird an s1 angefügt. Wenn die Gesamtlänge von s1 + s2 die angegebene maximale Größe des Buffers übersteigt, wird s1 neu allokiert. Der Zielstring s1 muss mit alloc allokiert werden, der Ergebnisstring muß - sofern nicht 0 - mit release wieder freigegeben werden.

Name Typ Default Beschreibung
Return char*   Zeiger auf den Zielstring s1
s1 char* - Zielstring
s2 char* - Originalstring
bufferize int* - Aktuelle Größe des für s1 reservierten Speichers,

Das Beispiel fügt vom Inhalt eines Strings, dessen Länge variieren kann, an einen Zielstring an.

int main()
{
    int 		bufsize = 256;
    char	*	s1 		= alloc(bufsize);
    char	*s	2 		= "string with arbitrary length, might be much longer in real life";
    int 		i 		= 0;
for (i = 0; i < 1000; ++i) { s1 = str_append(s1, s2, &bufsize); wlog ("", "str address: %d, buffer size: %d\n", s1, bufsize); } showmessage(s1);
release(s1); return 0; }

Seit
Version 4.0.5 (19.11.2015)

Verfügbarkeit
priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

Siehe auch
strcpy
strcat
strncat

Alphabetic index HTML hierarchy of classes or Java