Was ist, wenn malloc versagt?
Wenn einemalloc
Zuweisung schlägt fehl, sollten wir es erneut versuchen?
In etwa so:
char* mystrdup(const char *s)
{
char *ab = NULL;
while(ab == NULL) {
ab=(char*)malloc(strlen(s)+1);
}
strcpy(ab, s);
return ab;
}
Ist die while-Schleife zur Überprüfung der Speicherzuordnung gültig?