Cтраница 1
Статические переменные являются исключением из правила, касающегося неинициализированных переменных - они по умолчанию инициализируются нулем. [1]
Статические переменные представляют собой переменные, которые определяются путем их описания в некоторых процедурах или блоках. Такие переменные формируются автоматически при передаче управления процедуре и уничтожаются при выходе из нее. [2]
Статические переменные ( для описания которых в языке Алгол 60 используется описатель own) недоступны вне подпрограмм, внутри которых описаны переменные, сохраняющие свои значения в промежутках между обращениями к этим подпрограммам. [3]
Статические переменные, определенные с помощью ключевого слова Static, должны иметь определенные значения уже при первом вызове процедуры. В VBA эти переменные получают некоторое значение в момент их объявления. [4]
В языке Паскаль отсутствуют статические переменные. [5]
При возврате стека программа не удаляет статические переменные или объекты, так как они удаляются при выходе из программы. [6]
В стандарте ISO на язык Паскаль [2] не введены ни статические переменные, ни средства инициализации переменных произвольными значениями на этапе трансляции. [7]
Статические переменные также локальны в своей функции, но их значения сохраняются. Внешние переменные не локальны ни в одной из функций, а их значения также сохраняются. [8]
Уравнения плоской деформации распадаются на две группы, одна из которых (2.4.24), (2.4.25) содержит статические неизвестные CJQ, ср, а другая (2.4.26) - кинематические va, Vp. Поэтому при наличии достаточного количества краевых условий возможны случаи, когда статические переменные определяются независимо от кинематических. Различают статически и кинематически определимые задачи. [9]
Современная тенденция развития языка ведет к статическим Лисп-системам. Фактически разница между динамическими и статическими переменными позволяет использовать во вложенных функциях динамическое значение переменной внешнего уровня, несмотря на то что встречались статические переменные с тем же именем. [10]
В качестве примера я собираюсь привести локальный модуль HriteHod, который разбивает вывод на страницы и колонки. WriteMod экспортирует процедуру WRITECARD, вызываемую для вывода чисел типа CARDINAL. Модуль WriteHod использует статические переменные для хранения номера строки и номера колонки. Каждый раз при выводе числа WriteMod проверяет. [11]
Глобальные переменные обычно используются, когда многим функциям нужен доступ к одним и тем же данным. В C глобальные переменные используются очень редко. Как только вы научитесь создавать статические переменные класса, вы практически не будете обращаться к глобальным переменным. [12]
Заметим, что эта пустяковая работаэ занимает почти столько же строк кода, сколько занимает поиск простых чисел. Модуль WriteMod прячет процедуру WRITELN и статические переменные col и line. Действия WriteMod должны быть понятны, и в дальнейшем я ие буду их обсуждать. [13]
Переменные в Модуле-2 имеют две главные характеристики: тип н время жизни. Из предыдущих глав вы должны помнить, что тип переменной определяет множество операций, применимых к переменной, н объем памяти, который она занимает. Время жизни переменной является важной характеристикой: динамические переменные существуют только во время выполнения окружающей их процедуры, статические переменные существуют все время выполнения программы. [14]
Введены новые классы переменных - локальные и статические. Областью их действия является процедура или программный файл, где они были объявлены. Продолжительность жизни локальных переменных ограничивается сроком жизни соответствующего ей объекта. Статические переменные сохраняются в течение всего времени исполнения программы. [15]