Как правильно использовать realloc (), когда он терпит неудачу и возвращает NULL?
Кто-нибудь может подвести итог, как правильно использоватьrealloc()
?
Что ты делаешь, когдаrealloc()
потерпит неудачу?
Из того, что я видел до сих пор, кажется, что еслиrealloc()
не удается, вы должныfree()
старый указатель Это правда?
Вот пример:
1. char *ptr = malloc(sizeof(*ptr) * 50);
2. ...
3. char *new_ptr = realloc(ptr, sizeof(*new_ptr) * 60);
4. if (!new_ptr) {
5. free(ptr);
6. return NULL;
7. }
предполагатьrealloc()
терпит неудачу на линии3
, Я правильно делаю на линии5
отfree()
ИНГptr
?