Если не удалось выполнить распределение malloc
, попробуйте еще раз?
В чем-то вроде этого:
char* mystrdup(const char *s)
{
char *ab = NULL;
while(ab == NULL) {
ab=(char*)malloc(strlen(s)+1);
}
strcpy(ab, s);
return ab;
}
Является ли цикл while действительным для проверки распределения памяти?