Операционная система UNIX. Руководство программиста


Информация об определениях/использованиях значений


lint стремится выявлять ситуации, когда значения переменных используются до того, как определяются (присваиваются). lint выявляет локальные переменные (принадлежащие автоматическому и регистровому классам памяти), первое использование которых при выполнении программы происходит раньше, чем им присваивается какое-либо значение. Считается, что вычисление адреса переменной составляет ее "использование", поскольку фактическое использование может произойти в любой последующий момент посредством указателя.

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

Информация об определении/использовании значений позволяет также обнаружить локальные переменные, значения которых определяются, но нигде не используются. Это часто оказывается источником неэффективности и, кроме того, может быть проявлением ошибки.




Начало  Назад  Вперед



Книжный магазин