Все ресурсы, получаемые динамически с помощью функций Стандартной библиотеки, должны быть явно высвобождены
Все ресурсы, получаемые динамически с помощью функций Стандартной библиотеки, должны быть явно высвобождены.
Ресурсы - это то, что вы должны вернуть в систему после их использования. Примеры включают динамически выделенные дескрипторы памяти и файла.
Если вы не отпустите ресурсы явным образом как можно скорее, то может произойти отказ из-за истощения ресурсов.
Шашечные флаги используют:
Функции выделения памяти, такие как malloc
и aligned_alloc
если память не освобождается.
Функции открытия файлов, такие как fopen
если файл не закрыт.
Проверить наличие этого правила можно только с помощью анализа Bug Finder.
Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».
Группа: Ресурсы |
Категория: Требуемая |
Категория AGC: Требуется |
Check MISRA C:2012 (-misra3)
| MISRA C:2012 Dir
4.13
| MISRA C:2012 Rule
21.3
| MISRA C:2012 Rule
21.6
| Resource
leak