Папа
Высший разум
(143744)
1 месяц назад
Это ты под DOS на C не писал. За статическую переменную внутри функции - немедленный расстрел. Это куча лишнего кода, исполнявшегося при каждом входе в функцию. Конечно, накладных расходов меньше, если объявлять глобальную переменную или статическую уровня структуры/класса.
Андрей
Высший разум
(460590)
1 месяц назад
Можно и в глобальных - если объявлять их с тем же модификатором static, чтобы не засорять пространство глобальных имён. С точки зрения машинного кода, выданного нормальным компилятором, разницы между глобальными переменными, static вне функций и static внутри функций не будет.