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