Что если malloc не работает?

Еслиmalloc распределение не удается, мы должны попробовать это снова?

Примерно так:

char* mystrdup(const char *s)  
{
    char *ab = NULL;

    while(ab == NULL) {
        ab=(char*)malloc(strlen(s)+1);  
    }

    strcpy(ab, s);
    return ab;
}

Цикл while действителен для проверки выделения памяти?

Ответы на вопрос(7)

Ваш ответ на вопрос