Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Для постоянного хранения значения в функции используют статик, хранение в глобальных значения не выгодно?

ФермаКактусов Высший разум (211433), закрыт 2 недели назад
Лучший ответ
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (263662) 1 месяц назад
Не имеет значения. Обе находятся в статической области и существуют до завершения программы, различаются областью видимости. Отличие имеют автоматические переменные, которые хранятся в стеке и требуют выделения памяти каждый раз при вызове функции..
Остальные ответы
Папа Высший разум (143744) 1 месяц назад
Это ты под DOS на C не писал. За статическую переменную внутри функции - немедленный расстрел. Это куча лишнего кода, исполнявшегося при каждом входе в функцию. Конечно, накладных расходов меньше, если объявлять глобальную переменную или статическую уровня структуры/класса.
Зло Просветленный (39201) 1 месяц назад
Для "постоянного хранения значения" используют запись в файл.
Андрей Высший разум (460590) 1 месяц назад
Можно и в глобальных - если объявлять их с тем же модификатором static, чтобы не засорять пространство глобальных имён. С точки зрения машинного кода, выданного нормальным компилятором, разницы между глобальными переменными, static вне функций и static внутри функций не будет.
Похожие вопросы