keshav desai Ответов: 1

Динамическое выделение памяти в C


1)Если я создаю malloc() и для увеличения размера использую realloc()
2)Если я создаю malloc() , используйте free() для удаления памяти и снова malloc() для увеличения размера

Есть ли недостаток если я использую 2 метода вместо 1 также есть ли какая то разница между 1 и 2 методами

Что я уже пробовал:

понятия не имею, может ли быть какая-то разница о недостатке

Richard MacCutchan

Выполните некоторые тесты времени, чтобы увидеть.

1 Ответов

Рейтинг:
2

KarstenK

Преимущество realloc заключается в том, что не нужно писать и запускать функцию копирования, и иногда она должна быть быстрее, потому что malloc часто использует больший кусок, который был использован в realloc.

В программах лучше всего использовать для копирования как можно меньше памяти, потому что в этом нет никакого преимущества. С указателями лучше работать аккуратно.

Как писал Ричард: напишите несколько больших циклов, чтобы проверить это.