Константы являются объектами статического класса памяти.
Функция может быть определена как статический внешний объект. В этом случае она будет доступной в любой точке данного мод\ля и не доступной за пределами модуля.
Программа 105
#include<stdio.h>
main()
(
int count;
int trystat () ;
for (count=l; count<=3; count++)
(
printf ("Итерация %d:\n", count);
trystat() ;
}
)
trystat ()
{
int fade=l;
static int stay=l;
printf("fade = %d и stay = %d\n", fade++, stay++) ;
}
Результат работы программы:
Итерация 1:
fade = 1 и stay = 1
Итерация 2:
fade = 1 и stay = 2
Итерация 3:
fade = 1 и stay = 3
Если мы лишь немного видоизменим в программе функцию trystat()
trystat()
{
int fade=l;
int stay=l;
printf("fade = %d и stay = %d\n", fade++, stay++);
}
то получим следующий результат:
Итерация 1:
fade = 1 и stay = 1
Итерация 2:
fade = 1 и stay = 1
Итерация 3:
fade = 1 и stay = 1