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; }
Alphabetic index HTML hierarchy of classes or Java