Ответ для Mac OS и пример, которого следует избегать (сэкономил вам полчаса).
Mac OS не поставляется с Valgrind или dmalloc.Кроме того, у Valgrind есть некоторые проблемы с совместимостью при попытке установить его в Sierra.
Существует утилита под названием «утечки», которую я запускаю следующим образом:
leaks -atExit --/Contents/Developer/usr/lib/libLeaksAtExit.dylib ./a.out
К сожалению, это не сообщает об очевидных утечках памяти ... Возможно, я неправильно его использую, но я просто искал простой способ проверить, что моя программа на C освободила свою память какэто должно быть.
Если у вас есть время, то может прочитать и использовать Использование OSX Leaks для программ на C в командной строке?
Ресурсы:
- Обнаружение утечек памяти
- Использование команды "утечки" в исполняемом файле C / C ++
PS: Может быть, если использовать с «iprofiler», то это может быть полезно, но у меня его не было установлено.