Что такое статическая переменная (static variable) в C?

Этот вопрос проверяет понимание статических переменных, их хранения и особенностей.

Короткий ответ

Статическая переменная объявляется с ключевым словом static и сохраняет своё значение между вызовами функции. В отличие от локальных переменных, она не уничтожается после выхода из области видимости.

Длинный ответ

Что делает static?

Переменная создаётся один раз и сохраняет значение между вызовами функции.

 

Пример использования:

#include <stdio.h>

void counter() {
    static int count = 0; // Переменная сохраняет значение между вызовами
    count++;
    printf("Счётчик: %d\n", count);
}

int main() {
    counter();
    counter();
    counter();
    return 0;
}

 

Выходные данные:

Счётчик: 1  
Счётчик: 2  
Счётчик: 3  

static используется для хранения состояния переменной между вызовами функции.

Уровень

  • Рейтинг:

    1

  • Сложность:

    3

Навыки

  • C

Ключевые слова

Подпишись на C/C++ Developer в телеграм