#include char *StrCreate(const char *str) { int len; char *retval; if(str == NULL) return NULL; len = strlen(str); retval = (char *)malloc(len + 1); strncpy(retval, str, len); return retval; } char *StrConcate(char *str1, const char *str2) { int len1, len2; if(str1 == NULL) return NULL; if(str2 == NULL) return str1; len1 = strlen(str1); len2 = strlen(str2) str1 = (char *)realloc(str1, len1 + len2 + 1); strncpy(str1+len1, str2, len2); return str1; } int main(int argc, const char *argv[]) { char *string; string = StrCreate("Das ist ein String!\n"); printf("%s", string); string = StrConcate(string, "Noch mehr Text\n"); printf("%s", string); return 0; }